2016-08-20 分類: 網(wǎng)站建設(shè)
AJAX在傳統(tǒng)的JavaScript代碼,如果你想從數(shù)據(jù)庫或服務(wù)器上的文件中獲取的任何信息,或發(fā)送用戶信息到服務(wù)器,你將不得不做出一個HTML表單和GET或POST數(shù)據(jù)到服務(wù)器。用戶必須單擊“提交”按鈕發(fā)送/獲取信息,等待服務(wù)器響應(yīng),然后新的一頁,將負(fù)載與結(jié)果。
因為服務(wù)器返回一個新的頁面,每次用戶提交輸入,傳統(tǒng)的Web應(yīng)用程序可以運行緩慢,往往不太友好。使用AJAX,JavaScript直接與服務(wù)器進(jìn)行通信,通過JavaScript的XMLHttpRequest對象。
通過一個HTTP請求,頁面可以請求,從服務(wù)器獲得響應(yīng),無需重新加載頁面。用戶會停留在相同的頁面上,他或她不會注意到腳本請求頁面,或者在后臺發(fā)送數(shù)據(jù)至服務(wù)器。
這張照片是一個簡單的介紹了Ajax的工作原理:
用戶發(fā)送一個請求,執(zhí)行一個動作和動作的反應(yīng)顯示為一層,通過身份識別,無需重新加載整個頁面。比如用這個ID層:
< / DIV >
在接下來的步驟中我們將看到如何創(chuàng)建一個XMLHttpRequest和從服務(wù)器接收響應(yīng)。
1。創(chuàng)建XMLHttpRequest
不同的瀏覽器使用不同的方法來創(chuàng)建XMLHttpRequest對象。Internet Explorer使用ActiveX對象,而其他的瀏覽器使用內(nèi)置的JavaScript的XMLHttpRequest對象。
創(chuàng)建這個對象,并處理不同的瀏覽器,我們將使用一個“抓住”的聲明。
功能ajaxfunction()
{
VaR技術(shù);
試用
{
/ / Firefox,Opera 8 +,Safari
XMLHTTP =新xmlhttprequest();
}
趕上(E)
{
/ / Internet Explorer
試用
{
XMLHTTP =新的ActiveX對象(“MSXML2. XMLHTTP”);
}
趕上(E)
{
試用
{
XMLHTTP =新的ActiveX對象(“微軟。XMLHTTP”);
}
趕上(E)
{
警報(“您的瀏覽器不支持Ajax!“);
返回false;
}
}
}
2。發(fā)送請求到服務(wù)器
送一個請求給服務(wù)器,我們使用open()法和send()方法。
方法以三個參數(shù)的open()。第一個參數(shù)定義了發(fā)送請求時使用的方法(GET或POST)。第二個參數(shù)指定服務(wù)器端腳本的URL。第三個參數(shù)指定異步處理的請求。的send()方法發(fā)送請求到服務(wù)器。
XMLHTTP。打開(“得到”,“asp”,真的);
XMLHTTP發(fā)送(空);
3。編寫服務(wù)器端腳本
responseText將存儲從服務(wù)器返回的數(shù)據(jù)。在這里,我們要返回當(dāng)前時間。在“時間的代碼。ASP”看起來像這樣:
< %
響應(yīng)。到期= - 1
寫(時間)的反應(yīng)。
%>
4。消費的響應(yīng)
現(xiàn)在我們需要消耗響應(yīng)接收并顯示給用戶。
XMLHTTP onreadystatechange = function()。
{
如果(XMLHTTP。發(fā)生= 4)
{
以下是我參考網(wǎng)上的文檔。。時間。值= xmlHttp.responseText;
}
}
XMLHTTP。打開(“得到”,“asp”,真的);
XMLHTTP發(fā)送(空);
}
5。完整的代碼
現(xiàn)在我們必須決定什么時候應(yīng)該執(zhí)行Ajax功能。我們將讓函數(shù)運行的“幕后”當(dāng)用戶名文本字段的用戶類型的東西。完整的代碼看起來像這樣:
<
<魚>
<腳本type=“text/javascript”>
功能ajaxfunction()
{
VaR技術(shù);
試用
{
/ / Firefox,Opera 8 +,Safari
XMLHTTP =新xmlhttprequest();
}
趕上(E)
{
/ / Internet Explorer
試用
{
XMLHTTP =新的ActiveX對象(“MSXML2. XMLHTTP”);
}
趕上(E)
{
試用
{
XMLHTTP =新的ActiveX對象(“微軟。XMLHTTP”);
}
趕上(E)
{
警報(“您的瀏覽器不支持Ajax!“);
返回false;
}
}
}
XMLHTTP onreadystatechange = function()。
{
如果(XMLHTTP。發(fā)生= 4)
{
以下是我參考網(wǎng)上的文檔。。時間。值= xmlHttp.responseText;
}
}
XMLHTTP。打開(“得到”,“asp”,真的);
XMLHTTP發(fā)送(空);
}
< /腳本>
<表名稱=“以下是我參考網(wǎng)上“>
名稱:<輸入類型為“文本”
onkeyup =“ajaxfunction();”name=“用戶名”/>
時間:<輸入類型“文本”name=“時間”/>
<形式>
<體>
< / HTML >
創(chuàng)新互聯(lián)設(shè)計文章推薦:
網(wǎng)站題目:AJAX如何工作
文章URL:http://jinyejixie.com/news8/21008.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、網(wǎng)站建設(shè)、網(wǎng)站制作、域名注冊、服務(wù)器托管、網(wǎng)站維護(hù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容