您的位置:首页 > 编程语言 > ASP

ASP.NET2.0中用ICallbackEventHandler实现客户端与服务器端异步交互

2006-12-26 17:05 423 查看
页面代码:
<script type="text/javascript">
function ReceiveServerData(rValue)
{
alert(rValue);
}
</script>
<input id="Button1" type="button" value="button" onclick ="CallServer('Client')" />
服务端代码:

public partial class back2 : System.Web.UI.Page,System .Web .UI .ICallbackEventHandler
{
public string CallBackValue = null;
protected void Page_Load(object sender, EventArgs e)
{

}
// 注册脚本到前台页面
protected void Page_PreRender(object sender, EventArgs e)
{
RegClientScript();
}
// javascript函数(服务器端事件的客户端回调)
protected void RegClientScript()
{
ClientScriptManager cs = Page.ClientScript;
string jstxt=@"
function CallServer(msgid)
{
" + cs.GetCallbackEventReference(this, "msgid", "ReceiveServerData", null) + @";
}";
cs.RegisterStartupScript(this.GetType(), "callserver", jstxt, true);
}
//ICallbackEventHandler接口
//把值传到前台
string ICallbackEventHandler.GetCallbackResult()
{
return CallBackValue + ",Server";
}

//按受前台的参数
void ICallbackEventHandler.RaiseCallbackEvent(string eventArgument)
{
this.CallBackValue = eventArgument;
}
}

运行结果: (实现异步交互,页面不刷新)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: