更深入的參考與研究,可以看看以下的
http://msdn2.microsoft.com/zh-cn/library/ms178210%28vs.80%29.aspx http://tech.sina.com.cn/s/2006-04-20/1522911788.shtml http://tech.sina.com.cn/s/2006-04-20/1522911789.shtml
首先,它是建立在網頁之上的。開啟vs2005以上的版本,建立網站
轉載請註明 http://netsos.cnblogs.com/
1.在介面上拖放一個靜態控制項,button,在他的onclick事件上Callback <button onclick="Callback();" >測試一下ajax效果</button>
轉載請註明出處 【http://netsos.cnblogs.com】
2.寫上剛才的Callback函數 在頁面的javascript中
在javascript執行的代碼
1 <script type="text/javascript">
2 //onclick的事件開始啦!
3 function Callback()
4 {
5 //args 是一個變數,一會進行非同步時會用到
6 var args="網站上你要進行ajax,非同步進行的變數,最後傳入後台進行接收,處理";
7 //args變數現在用到了,ReceiveData是返回給用戶端,即是使用者看的結果,一會兒再說
8 <%=ClientScript.GetCallbackEventReference(this,"args","ReceiveData",null)%>
9 }
10 //這個是最後執行的,就是上面所說的
11 //這裡的data是後台,我們看不到的,服務端處理過之後,返還的結果
12 function ReceiveData(data)
13 {
14 //這裡可以自己根據情況寫
15 alert(data);
16 }
17
18 </script>
3.咱們接著進入後台,看看背景接收是怎麼樣的
在寫之前,先把準備工作做好,先實現 ICallbackEventHandler這個介面
他會自動產生自己內部的方法
轉載請註明 http://netsos.cnblogs.com/
代碼
1 #region ICallbackEventHandler 成員
2
3 public string GetCallbackResult()
4 {
5 return "";
6 }
7
8
9 public void RaiseCallbackEvent(string eventArgument)
10 {
11
12 }
13
14 #endregion
4.定義一個全域的變數 進行處理
轉載請註明出處 【http://netsos.cnblogs.com】
代碼
1 private string CallServerData=string.Empty;
2 #region ICallbackEventHandler 成員
3
4 //他會把傳過來的結果,作為剛才ReceiveData函數中的參數 ReceiveData(data),
5 //相當於data==GetCallbackResult()
6 public string GetCallbackResult()
7 {
8 return CallbackVaue + "ok!";
9 }
10
11
12 public void RaiseCallbackEvent(string eventArgument)
13 {
14 this.CallServerData= eventArgument;
15 //記住這裡的eventArgument就是剛才在前台的args變數的值
16 //接收完 args--->eventArgument---->CallServerData
17 }
18
19 #endregion
最後在總結一下
整個流程調用的順序是: (前台)Callback() -->
(後台)ICallbackEventHandler.RaiseCallbackEvent(string eventArgument) -->
(後台)ICallbackEventHandler.GetCallbackResult() -->
(前台)ReceiveServerData(string Value)。
轉載請註明出處【http://netsos.cnblogs.com】