客户端回调无反应

jamqkcg 2012-05-09 10:27:03
前台
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>回调</title>
<script type = "text/javascript" language ="javascript" >
function CallServerFunction()
{
//定义arg变量,存储页面中“id”属性为“word”元素的“value”属性值
var arg = document.getElementById("word").value;
//调用UseCallback函数,并传递arg变量,该变量最终将传递到RaiseCallbackEvent()方法
UseCallback(arg);
}
//接收回调服务器端传过来的结果数据(即服务器端的Result变量值),该函数名为GetCallbackEventReference()的第3个参数
function ReceiveServerData(result)
{
document.getElementById("rs").innerText = result;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<input type = "text" id="word" />
<br />
<!--调用回调函数的控件必须是HTML控件,不能为服务端控件!-->
<input type= "button" id ="btn" value = "回调" onclick="CallServerFunction();" />
<hr />
<span id="rs"></span>
</div>
</form>
</body>
</html>

后台
public partial class 客户端回调 : System.Web.UI.Page, System.Web.UI.ICallbackEventHandler
{
//定义Result变量用于存储回调的返回值
private string Result;

protected void Page_Load(object sender, EventArgs e)
{
string BRef = Page.ClientScript.GetCallbackEventReference(this,
"arg", "ReceiveServerData", "null ");
//将javascript函数声明赋值给BScript,BRef即为UseCallback函数的函数体
//UseCallback函数是浏览器端函数,接收1个参数
string BScript = "function UseCallback(arg) " +
"{ " + BRef + "; " + "} ";
//调用ClientScriptManager对象的RegisterClientScriptBlock方法将UseCallback函数注册到页面对象客户端脚本中
Page.ClientScript.RegisterClientScriptBlock(this.GetType(),
"UseCallback", BScript, true);

}

//该方法是回调执行的方法,根据参数在这个方法中处理回调的内容
public void RaiseCallbackEvent(string arg)
{
//arg为javascript从客户端传递的参数
Result = "你输入的是:" + arg;
}

//该方法是返回回调的结果给客户端
public string GetCallbackResult()
{
//返回Result到指定的客户端函数中
return Result;
}

}
*************************************
到底是哪里出现了问题?
...全文
87 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
bonnibell 2012-05-12
  • 打赏
  • 举报
回复

没有仔细看啊,不过一般是 result.innerText;

楼主debugger一下啊


function ReceiveServerData(result)
{
document.getElementById("rs").innerText = result.innerText ;
}
jamqkcg 2012-05-12
  • 打赏
  • 举报
回复
我是为学习而来,并不是做项目,AJAX我知道可以实现页面无刷新[Quote=引用 1 楼 的回复:]

如果是webform的,我推荐你用这个技术http://ajaxpro.codeplex.com/ 相对简单也够灵活。

微软的callback到还可以,就是不适合做项目。
[/Quote]
xuan.ye 2012-05-10
  • 打赏
  • 举报
回复
如果是webform的,我推荐你用这个技术http://ajaxpro.codeplex.com/ 相对简单也够灵活。

微软的callback到还可以,就是不适合做项目。

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧