天天看點

Ajax使用初步

Ajax定義為“Asynchronous JavaScript + XML”的簡稱,也就是異步的JavaScript和XML處理。從原理上看,主要是Ajax可以通過調用HttpRequest實作與伺服器的異步通訊,并最終在網頁中實作豐富友好的使用者界面

Ajax使用初步,配置步驟

1.把Ajax.dll copy到應用系統bin目錄下,然後在工程引用中引用Ajax.dll,如果沒有的話可以到網上下載下傳

2.配置web.config,添加如下資訊

Ajax使用初步

< httpHandlers >

Ajax使用初步

   < add  verb ="POST,GET"  path ="ajax/*.ashx"  type ="Ajax.PageHandlerFactory, Ajax"   />

Ajax使用初步

</ httpHandlers > 3.假設應用系統叫Document,目錄格式為Pages/AjaxTest

4.在Pages/AjaxTest下建立cs檔案AjaxForm.cs,添加如下方法

Ajax使用初步

// [Ajax.AjaxMethod]

Ajax使用初步

[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.Read)]

Ajax使用初步

public   static   string  GetNIVNumber( string  str)

Ajax使用初步
Ajax使用初步
Ajax使用初步

{

Ajax使用初步

 return str;

Ajax使用初步

} 5.在Pages/AjaxTest下建立頁面AjaxForm.aspx

Ajax使用初步

< HTML >

Ajax使用初步

  < HEAD >

Ajax使用初步

   < title > AjaxForm </ title >

Ajax使用初步

   < meta  name ="GENERATOR"  Content ="Microsoft Visual Studio .NET 7.1" >

Ajax使用初步

   < meta  name ="CODE_LANGUAGE"  Content ="C#" >

Ajax使用初步

   < meta  name ="vs_defaultClientScript"  content ="JavaScript" >

Ajax使用初步

   < meta  name ="vs_targetSchema"  content ="http://schemas.microsoft.com/intellisense/ie5" >

Ajax使用初步
Ajax使用初步

   < script  language ="javascript" >

Ajax使用初步
Ajax使用初步

  function testAjax(owner, item, evt)

Ajax使用初步
Ajax使用初步
Ajax使用初步

{

Ajax使用初步

   var first=document.getElementById("txtfirst");

Ajax使用初步

   AjaxMethod.GetNIVNumber(first.value,callback_GetNIVNumber);

Ajax使用初步

  }

Ajax使用初步

  function callback_GetNIVNumber(res)

Ajax使用初步
Ajax使用初步
Ajax使用初步

{

Ajax使用初步

   var obj=document.getElementById("txtsecond");   

Ajax使用初步

   obj.value=res.value;    

Ajax使用初步

  }

Ajax使用初步

   </ script >

Ajax使用初步

  </ HEAD >

Ajax使用初步

  < body  MS_POSITIONING ="GridLayout" >

Ajax使用初步

   < form  id ="Form1"  method ="post"  runat ="server" >

Ajax使用初步

    < INPUT  style ="Z-INDEX: 101; LEFT: 208px; POSITION: absolute; TOP: 40px"  type ="button"  value ="Button"

Ajax使用初步

    onclick ="testAjax();" >

Ajax使用初步

    < asp:TextBox  id ="txtfirst"  style ="Z-INDEX: 102; LEFT: 40px; POSITION: absolute; TOP: 40px"  runat ="server" ></ asp:TextBox >

Ajax使用初步

    < asp:TextBox  id ="txtsecond"  style ="Z-INDEX: 103; LEFT: 40px; POSITION: absolute; TOP: 72px"  runat ="server" ></ asp:TextBox >

Ajax使用初步

   </ form >

Ajax使用初步

  </ body >

Ajax使用初步

</ HTML >

Ajax使用初步

protected  System.Web.UI.WebControls.TextBox txtfirst;

Ajax使用初步

protected  System.Web.UI.WebControls.TextBox txtsecond;

Ajax使用初步

private   void  Page_Load( object  sender, System.EventArgs e)

Ajax使用初步
Ajax使用初步
Ajax使用初步

{

Ajax使用初步

 //注冊,其中Document.Pages.AjaxTest.AjaxMethod為AjaxMethod.cs方法所在的命名空間

Ajax使用初步

 Ajax.Utility.RegisterTypeForAjax(typeof(Document.Pages.AjaxTest.AjaxMethod));

Ajax使用初步

} 然後運作就可以了,

實作效果:在第一個textbox中輸入内容,點選button,就把内容顯示到第二textbox中。這隻是一個簡單的示例,還可以修改調用方法,從資料庫讀取以及更複雜的操作

繼續閱讀