页面代码:
<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;
}
}
{
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;
}
}
运行结果: (实现异步交互,页面不刷新)