CallBack技術備忘筆記

  • 2425
  • 0
  • 2009-02-11

CallBack技術備忘筆記

前之天在網上搜尋了一下,為了怕忘記做了這筆記.

Callback.aspx:

<head runat="server"> 
  <title>未命名頁面</title> 
  <script type="text/javascript" src="http://www.google.com/jsapi"></script>  <!--  Google 提供的 AJAX Libraries API -->  
  <script type="text/javascript" language="javascript"> 
      google.load("jquery", "1.2");  // 載入 jQuery 1.2.X 最新版本 
  </script> 
  <script type="text/javascript" src="js/jquery.autocomplete.js"></script>   
  <link rel="stylesheet" type="text/css" href="css/jquery.autocomplete.css" />  
  <script type="text/javascript"> 
     function ReceiveServerData(rValue) { 
       document.all.t1.value=rValue 
     }; 
  </script> 
</head> 

  <body> 
    <form id="form1" runat="server" method="post"> 
       <label for="t1">滑鼠點輸入框回傳Sever端時間:</label> 
       <input type="text" name="t1" id="t1"   value="點這..." runat="server" /> 
    </form> 
  </body>

Callback.aspx.vb

     Inherits System.Web.UI.Page 
     Implements System.Web.UI.ICallbackEventHandler 
  
     '處理要回傳給 Client端(瀏覽器)的值 ,此範例僅回傳 Sever 端時間 
     Protected Overridable Function GetCallbackReult() Overridable Function GetCallbackReult() As String Implements System.Web.UI.ICallbackEventHandler.GetCallbackResult 
         Return Now  '回傳Sever端時間 
     End Function 
  
     '處理從Client端(瀏覽器)傳來的值 , 此範例尚未用到 
     Dim returnValue As String 
     Public Sub RaiseCallbackEvent() Sub RaiseCallbackEvent(ByVal eventArgument As String) Implements System.Web.UI.ICallbackEventHandler.RaiseCallbackEvent 
         returnValue = eventArgument 
     End Sub 
  
     'Call Back的整個原理是: 
     '1.在ASP.NET程式碼中,利用『GetCallbackEventReference』產生一段JavaScript的Call Back指令。 
     '2.將這段Call Back指令掛到某個Html控制項上,利用這段JavaScript指令在不postback的情況下,將資料(參數)回傳到Server(參數包含下表中定義的argument, clientCallbackProc…) 。 
     '3.Server端(.aspx.vb程式)接收到資料(參數)後進行處理,處理完後回呼(Call Back)Client端的JavaScript。 
     '4.Client端的JavaScript函式,收到回呼的結果,動態更新網頁內容。 
     Protected Sub Page_Load() Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
          '在這建立一段 JavaScript 程式碼,用來在 Client 端啟動Call Back 動作 
         Dim cbReference As String 
         '建立 Call Back 程式碼-指定回傳函式為 ReceiveServerData 
         cbReference = Page.ClientScript.GetCallbackEventReference(Me, "", "ReceiveServerData", "") 
  
         '註冊 
         t1.Attributes("onchange") = cbReference 
         t1.Attributes("onclick") = cbReference 
     End Sub

執行結果:

暫存檔02  

暫存檔01