学习笔记:回调功能与AJAX

   回调功能与AJAX都可以实现页面的局面刷新:

1: 回调功能实现的方式:

A.aspx

<script type=javascript>

function getTemp()//启动加调过程

{

var zipcode=document.forms[0].TextBox1.value;

UseCallBack(zipcode,"");

}

function GetTempFromServer(TextBox2,context)

{

document.forms[0].Text.value="zipcode:"+document.forms[0].TextBox1.value+" |Temp:"+TextBox2;

}

</script>

<body>

<asp:TextBox id="TextBox1" runat="server"></asp:TextBox>

<input type="button" id="button1" value="Get Temp" onclick="getTemp()">//用标准的HTML控件,<ASP:Button> 不可用

<asp:TextBox id="TextBox2" runat="server"></asp:TextBox>

</body>

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

A.aspx.cs

public pratial class A:system.web.UI.Page,system.Web.UI.ICallbackEventHandler(实现Web.UI.ICallbackEventHandler接口,  这里为什么使用pratial部分类修饰)

{

private string _callbackresult=null;

void page_load(Object sender,Eventargs e)

{

string cbreference=Page.ClientScript.GetCallbackEventReference(this,"arg","GetTempFromServer","context");

string cbScript="function UseCallback(arg,context) {"+cbreference+"}";

page.client.RegisterClientScriptBlock(this.gettype(),"UseCallback",cbscript,true);

}

public void RaiseCallbackEvent(string eventArg)(Web.UI.ICallbackEventHandler接口里的方法)

{

Weater.TemperatureService ws=new  Weater.TemperatureService()//远程WEB服务,用于根据邮政编码提供天气信息, 需添加引用

_callbackresult=ws.getTemp(eventArg).Tostring();

}

public string GetCallbackResult()

{

return _callbackresult;

}

}

 2.AJAX方式:  不会,  书上没有, 也想抄上去的

回调方式是能过浏览器的XMLHTTP,  AJAX通过XMLHTTPRequest,  可能是这样的,   GOOGLE

你可能感兴趣的:(学习笔记:回调功能与AJAX)