AJAX - 服务器响应
- 上一页 AJAX 请求
- 下一页 AJAX XML 文件
Ang onreadystatechange attribute
readyState
Ang attribute ay nag-iimbak ng estado ng XMLHttpRequest.
onreadystatechange
Ang attribute ay tinukoy ang function na dapat itawag kapag nagbabago ang readyState.
status
Ang attribute at statusText
Ang attribute ay naglalaman ng estado ng XMLHttpRequest object.
Property | Paglalarawan |
---|---|
onreadystatechange | Tinukoy ng function na dapat itawag kapag nagbabago ang readyState attribute. |
readyState |
Nag-iimbak ng estado ng XMLHttpRequest.
|
status |
Para sa kumpletong listahan, bisitahin mo ang Tutumbay ng Http Mensahe |
statusText | iba't-ibang estado ng pagbabalik (halimbawa "OK" o "Not Found"), |
Bawat readyState, ang onreadystatechange function ay tinatawag.
Kapag nagbabago ang readyState
Para sa 4
,status
Para sa 200
Kapag, handa na ang tugon:
实例
function loadDoc() { var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("demo").innerHTML = this.responseText; } }; xhttp.open("GET", "ajax_info.txt", true); xhttp.send(); }
Komento:onreadystatechange
ay tinatanggal lima beses (0-4), bawat readyState
Lahat ay nagbabago.
Mga paggamit ng callback function
Ang callback function ay isang function na pinapasa bilang argumento sa ibang function.
Kung mayroon kang maraming AJAX na mga gawain sa iyong websayt, dapat mong lumikha ng isang function na gumagawa ng XMLHttpRequest object, at isang callback function para sa bawat AJAX na gawain.
Ang function na ito ay dapat maglalaman ng URL at ang function na dapat ituring kapag handa na ang tugon.
实例
loadDoc("url-1", myFunction1); loadDoc("url-2", myFunction2); function loadDoc(url, cFunction) { var xhttp; xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { cFunction(this); } }; xhttp.open("GET", url, true); xhttp.send(); } function myFunction1(xhttp) { // Dapat mangyari dito ang aksyon } function myFunction2(xhttp) { // Dapat mangyari dito ang aksyon }
Property ng tugon ng server
Property | Paglalarawan |
---|---|
property ng responseText | Makukuha ang tugon data sa anyo ng string |
responseXML | Makukuha ang tugon data sa anyo ng XML data |
Paraan ng tugon ng server
Paraan | Paglalarawan |
---|---|
getResponseHeader() | Makukuha ang partikular na header information mula sa server |
getAllResponseHeaders() | Makukuha ang lahat ng header information mula sa server |
property ng responseText
property ng responseText
Ang property na ito ay ibibigay ng server na tugon bilang string ng JavaScript, kaya maari kang gamitin ito tulad ng:
实例
document.getElementById("demo").innerHTML = xhttp.responseText;
property ng responseXML
Ang XML HttpRequest object ay may nakalalabing XML parser.
ResponseXML
Katangian sa XML DOM object ang tugon ng server.
Ginagamit ang katangian na ito upang magbigay ng tugon bilang XML DOM object.PagsusuriPara sa XML DOM object:
实例
Hilingin ang file music_list.xml,at para sa pag-iinterpret ng tugon:
xmlDoc = xhttp.responseXML; txt = ""; x = xmlDoc.getElementsByTagName("ARTIST"); for (i = 0; i < x.length; i++) { txt += x[i].childNodes[0].nodeValue + "<br>"; } document.getElementById("demo").innerHTML = txt; xhttp.open("GET", "music_list.xml", true); xhttp.send();
Sa katunayan na ito ang DOM na pagtuturo sa DOM XML na kaalaman na kaalaman ka.
getAllResponseHeaders() 方法
getAllResponseHeaders()
方法返回所有来自服务器响应的头部信息。
实例
var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("demo").innerHTML = this.getAllResponseHeaders(); } };
getResponseHeader() 方法
getResponseHeader()
方法返回来自服务器响应的特定头部信息。
实例
var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("demo").innerHTML = this.getResponseHeader("Last-Modified"); } }; xhttp.open("GET", "ajax_info.txt", true); xhttp.send();
- 上一页 AJAX 请求
- 下一页 AJAX XML 文件