acara onreadystatechange

Apabila permintaan dihantar ke pelayan, kami perlu melaksanakan beberapa tugas berasaskan respons.

Apabila readyState berubah, acara onreadystatechange akan dicetuskan.

atribut readyState menyimpan maklumat status XMLHttpRequest.

Berikut ialah tiga atribut penting objek XMLHttpRequest:

AtributPenerangan
onreadystatechangeFungsi storan (atau Nama fungsi), fungsi ini akan dipanggil apabila sifat readyState berubah.
readyState
屬性描述
onreadystatechange存儲函數(shù)(或函數(shù)名),每當(dāng) readyState 屬性改變時,就會調(diào)用該函數(shù)。
readyState

存有 XMLHttpRequest 的狀態(tài)。從 0 到 4 發(fā)生變化。

  • 0: 請求未初始化

  • 1: 服務(wù)器連接已建立

  • 2: 請求已接收

  • 3: 請求處理中

  • 4: 請求已完成,且響應(yīng)已就緒

status200: "OK"
404: 未找到頁面
Menyimpan status XMLHttpRequest. Perubahan dari 0 kepada 4.

  • 0: Permintaan tidak dimulakan

  • 1: Sambungan pelayan telah diwujudkan
    < /li>
  • 2: Permintaan telah diterima

  • 3: Permintaan sedang diproses

  • 4: Permintaan telah selesai , dan respons sudah sedia
status200 : "OK"
404: Halaman Tidak Ditemui

Dalam acara onreadystatechange, kami menentukan tugas yang perlu dilakukan apabila respons pelayan sedia untuk diproses.

Apabila readyState bersamaan dengan 4 dan statusnya ialah 200, ini bermakna respons sedia:

Instance

<html>
<head>
<script type="text/javascript">
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for 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","/asset/demo.ajax.php?dm=txt&act=getfruits",true);
xmlhttp.send();
}
</script>
</head>
<body>
<div id="myDiv"><h2>Let AJAX change this text</h2></div>
<button type="button" onclick="loadXMLDoc()">通過 AJAX 改變內(nèi)容</button>
</body>
</html>

Nota :

onreadystatechange Peristiwa dicetuskan 5 kali (0 - 4), sepadan dengan setiap perubahan dalam readyState.

Menggunakan fungsi panggil balik

Fungsi panggil balik ialah fungsi yang dihantar sebagai parameter kepada fungsi lain. Jika anda mempunyai berbilang tugas AJAX di tapak anda, anda harus menulis fungsi

standard
untuk mencipta objek XMLHttpRequest dan memanggil fungsi itu untuk setiap tugas AJAX.