Ajax ASP.NET 2.0内置形式——Call Back
Call Back是微软最早的Ajax策略。它的目标是让用户象使用PostBack一样来使用它,以达到异步更新数据的目的。只是相对其他的Ajax框架,它更难扩展,所以应用受到限制。
要应用Call Back,Page必须实现ICallBackEventHandler接口。ICallBackEventHandler接口包括两个方法:
RaiseCallbackEvent 方法执行对异步请求的服务器端处理;
GetCallBackResult 方法返回异步请求的处理结果;
客户端请求与回显:
<script type="text/javascript">
//接收服务器返回的数据,在页面显示出来。
function ReceiveServerData(arg, context)
{
document.getElementById ("msg_display").innerHTML=arg;
}
//向服务器发送请求
function CallTheServer(arg, context)
{
<%= ClientScript.GetCallbackEventReference(this, "arg", "ReceiveServerData", "context") %>;
}
</script>
服务器处理与结果返回
public partial class Default3 : System.Web.UI.Page,ICallbackEventHandler
{
//定义一个全局字符串供callback使用
string str = "";
// 定义当callback服务器时回调的方法
public void RaiseCallbackEvent(String eventArgument)
{
str = "服务器callback得到了您输入的信息:" + eventArgument + "<br/>您的IP地址是:";
str += Request.UserHostAddress;
str += "<br/>当前服务器的时间:";
str += DateTime.Now.ToLocalTime();
}
// 定义返回给CallBack的字符串
public string GetCallbackResult()
{
return str;
}