AJax定義為“Asynchronous Javascript + XML”的簡稱,也就是異步的JavaScript和XML處理。從原理上看,主要是AJax可以通過調用HttpRequest實現與服務器的異步通訊,並最終在網頁中實現豐富友好的用戶界面
AJax使用初步,配置步驟
1.把Ajax.dll copy到應用系統bin目錄下,然後在工程引用中引用Ajax.dll,如果沒有的話可以下載/Files/singlepine/AJax.rar
2.配置web.config,添加如下信息
<httpHandlers>
<add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, AJax" />
</httpHandlers>3.假設應用系統叫Document,目錄格式為Pages\AJaxTest
4.在Pages\AjaxTest下建立cs文件AJaxMethod.cs,添加如下方法
//[Ajax.AJaxMethod]
[Ajax.AjaxMethod(AJax.HttpSessionStateRequirement.Read)]
public static string GetNIVNumber(string str)
{
return str;
}5.在Pages\AjaxTest下建立頁面AJaxForm.ASPx
<Html>
<HEAD>
<title>AJaxForm</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .Net 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClIEntScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/IE5">
<script language="Javascript">
function testAJax()
{
var first=document.getElementById("txtfirst");
AJaxMethod.GetNIVNumber(first.value,callback_GetNIVNumber);
}
function callback_GetNIVNumber(res)
{
var obj=document.getElementById("txtsecond");
obj.value=res.value;
}
</script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<INPUT style="Z-INDEX: 101; LEFT: 208px; POSITION: absolute; TOP: 40px" type="button" value="Button"
onclick="testAJax();">
<asp:TextBox id="txtfirst" style="Z-INDEX: 102; LEFT: 40px; POSITION: absolute; TOP: 40px" runat="server"></ASP:TextBox>
<asp:TextBox id="txtsecond" style="Z-INDEX: 103; LEFT: 40px; POSITION: absolute; TOP: 72px" runat="server"></ASP:TextBox>
</form>
</body>
</Html>protected System.Web.UI.WebControls.TextBox txtfirst;
protected System.Web.UI.WebControls.TextBox txtsecond;
private void Page_Load(object sender, System.EventArgs e)
{
//注冊,其中Document.Pages.AjaxTest.AjaxMethod為AJaxMethod.cs方法所在的命名空間
Ajax.Utility.RegisterTypeForAjax(typeof(Document.Pages.AjaxTest.AJaxMethod));
}然後運行就可以了,
實現效果:在第一個textbox中輸入內容,點擊button,就把內容顯示到第二textbox中。這只是一個簡單的示例,還可以修改調用方法,從數據庫讀取以及更復雜的操作