JQuery快速入門-Ajax
阿新 • • 發佈:2018-06-03
post alt 局部變量 獲取數據 strong utf-8 廣泛 brush send
一、AJAX概述
概念:AJAX = Asynchronous JavaScript and XML(異步的 JavaScript 和 XML)。
優點:通過在後臺與服務器進行少量數據交換,AJAX 可以使網頁實現異步更新。這意味著可以在不重新加載整個網頁的情況下,對網頁的某部分進行更新。
AJAX 不需要任何瀏覽器插件,但需要用戶允許JavaScript在瀏覽器上執行。
傳統的網頁(不使用 AJAX)如果需要更新內容,必需重載整個網頁面。
使用廣泛:有很多使用 AJAX 的應用程序案例:新浪微博、Google 地圖、開心網等等。
二、AJAX工作原理
三、AJAX應用
例子1:使用ajax修改html文本
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script> function loadXMLDoc() { var xmlhttp; //定義局部變量xmlhttp if (window.XMLHttpRequest) //XMLHttpRequet對象用於和服務器交互數據。 { // IE7+, Firefox, Chrome, Opera, Safari 瀏覽器執行代碼 xmlhttp=new XMLHttpRequest(); } else { // IE6, IE5 瀏覽器執行代碼 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("myDiv").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","/try/ajax/ajax_info.txt",true); xmlhttp.send(); } </script> </head> <body> <div id="myDiv"><h2>使用 AJAX 修改該文本內容</h2></div> <button type="button" onclick="loadXMLDoc()">修改內容</button> </body> </html>
整體流程:
1、點擊按鈕‘修改內容’,則會加載loadXMLDoc()函數;
2、loadXMLDoc()函數的內容:
定義局部變量xmlhttp對象,用於和服務器交互數據。
如果向服務器請求完成,且服務器響應已就緒時,進行如下操作:
1、設定操作。(本例設定修改id=‘myDiv‘的元素的內容。)
2、準備數據;(獲取數據的方法、url、是否異步)
3、發送數據。(將數據發送給服務器)
註意:
1、獲取數據的方法采用:GET還是POST?
與 POST 相比,GET 更簡單也更快,並且在大部分情況下都能用。
然而,在以下情況中,請使用 POST 請求:
- 無法使用緩存文件(更新服務器上的文件或數據庫)
- 向服務器發送大量數據(POST 沒有數據量限制)
- 發送包含未知字符的用戶輸入時,POST 比 GET 更穩定也更可靠
2、發送數據時,使用同步還是異步?
當您使用 async=false 時,請不要編寫 onreadystatechange 函數 - 把代碼放到 send() 語句後面即可:
JQuery快速入門-Ajax