Jambo AJAX - Matokeo ya Mfano wa Mfano wa Mfano

onreadystatechange 属性

readyState 属性存留 XMLHttpRequest 的状态。

onreadystatechange 属性定义当 readyState 发生变化时执行的函数。

status 属性和 Kueleza Hisia ya Http 属性存有 XMLHttpRequest 对象的状态。

属性 Kuelewa
onreadystatechange 定义了当 readyState 属性发生改变时所调用的函数。
readyState

保存了 XMLHttpRequest 的状态。

  • inaonekana kwa XMLHttpRequest.
  • 0: Inafikia hatua ya kuanzisha
  • 1: Mwongozo wa mtaalamu unaanza kuwa na ukosemu
  • 2: Hatua inasafirishwa
  • 3: Inapendea kusafirishwa hatua
status
  • 4: Inafikia hatua ya kusafirishwa na mawasiliano yanaanza kuwa inayopewa
  • 200: "OK"
  • 403: "Forbidden"

404: "Page not found" Kwa orodha kamili, tazama

Kueleza Hisia ya Http statusText

inaonyesha ujumbe wa hali wa kipindi (kama 'OK' au 'Haijafikia Hasa') kila mara

kama readyState inachangia, kirefu cha kirefu cha onreadystatechange kinatumika. readyState kwa 4,status kwa 200 wakati, mawasiliano yanaanza kuwa inayopewa:

Mifano

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(); 
}; 

Jifunze tena

Mafanikio:onreadystatechange inatukika mara tano (0-4), kila mara readyState zimekabbera.

Kutumia kirefu cha kirefu

Kirefu cha kirefu ni kirefu cha kirefu kinachotumika kama thamani kwenye kirefu cha kirefu kingine.

Kamaanisha weka vijana kwa ujenzi wa tovuti yako na matukio AJAX mbalimbali, unapaswa kumchora kikompyuta cha XMLHttpRequest na kikompyuta cha kirefu cha kila matukio AJAX.

该函数应当包含 URL 以及当响应就绪时调用的函数。

Mifano

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) {
  // 行动在这里
 }; 
function myFunction2(xhttp) {
  // 行动在这里
 }; 

Jifunze tena

服务器响应属性

属性 Kuelewa
responseText kipendekezo 获取字符串形式的响应数据
responseXML 获取 XML 数据形式的响应数据

服务器响应方法

Makampuni Kuelewa
getResponseHeader() Makosa ya kipekee kwa sababu ya kumaliza hii kwa sababu ya kipindi cha msaada.
getAllResponseHeaders() Makosa kwa sababu ya kumaliza hii kwa sababu ya kipindi cha msaada.

responseText kipendekezo

responseText kipendekezo Mwongozo kwa sababu ya kumaliza hii kwa sababu ya kipindi cha JavaScript.

Mifano

document.getElementById("demo").innerHTML = xhttp.responseText;

Jifunze tena

responseXML kipendekezo

Kipindi cha XMLHttpRequest kina uwanja wa kusoma XML kwa kufikia.

ResponseXML Mwongozo kwa sababu ya XML DOM mmoja.

Kwa sababu ya hii kipendekezo, unaweza kumaliza hii kwa sababu ya XML DOM mmoja.Tumia hii kipendekezo, unaweza kumaliza hii kwa sababu ya XML DOM mmoja.kwa sababu ya XML DOM mmoja.

Mifano

Msaada wa乞求 music_list.xml,na kusoma hii kwa heshima:

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();

Jifunze tena

Umasababu kwa maktaba ya DOM kwa ujumbe zaidi kuhusu XML DOM.

Mwongozo wa getAllResponseHeaders()

getAllResponseHeaders() Mwongozo huo unaonyesha habari za kipengele cha kwanza zote kutoka kwa msaada wa mtandao.

Mifano

var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
  if (this.readyState == 4 && this.status == 200) {
    document.getElementById("demo").innerHTML = this.getAllResponseHeaders();
  };
};

Jifunze tena

Mwongozo wa getResponseHeader()

getResponseHeader() Mwongozo huo unaonyesha habari za kipengele cha kwanza kutoka kwa msaada wa mtandao.

Mifano

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(); 

Jifunze tena