Acara onreadystatechange
Ketika permintaan ke server yang dikirim, kami ingin melakukan beberapa tindakan berdasarkan respon.
Acara onreadystatechange dipicu setiap kali perubahan readyState.
Properti readyState menyandang status XMLHttpRequest yang.
Tiga sifat penting dari objek XMLHttpRequest:
Milik | Deskripsi |
---|---|
onreadystatechange | Toko fungsi (atau nama fungsi) untuk dipanggil secara otomatis setiap kali perubahan properti readyState |
readyState | Menyandang status XMLHttpRequest tersebut. Perubahan dari 0 sampai 4: 0: permintaan yang tidak diinisialisasi 1: koneksi server didirikan 2: Permintaan diterima 3: memproses permintaan 4: meminta selesai dan respon siap |
status | 200: "OK" 404 halaman tidak ditemukan |
Dalam acara onreadystatechange, kita tentukan apa yang akan terjadi ketika respon server siap untuk diproses.
Ketika readyState adalah 4 dan status adalah 200, respon siap:
Contoh
function loadDoc() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function()
{
if (xhttp.readyState == 4 && xhttp.status == 200) {
document.getElementById("demo").innerHTML = xhttp.responseText;
}
};
Cobalah sendiri " Catatan: Acara onreadystatechange dipicu lima kali (0-4), satu kali untuk setiap perubahan readyState.
Menggunakan Fungsi Callback
Sebuah fungsi callback adalah fungsi lulus sebagai parameter untuk fungsi lain.
Jika Anda memiliki lebih dari satu tugas AJAX di website Anda, Anda harus membuat satu fungsi standar untuk menciptakan objek XMLHttpRequest, dan menyebutnya untuk setiap tugas AJAX.
Fungsi panggilan harus berisi URL dan apa yang harus dilakukan pada onreadystatechange (yang mungkin berbeda untuk setiap panggilan):
Contoh
function loadDoc(cFunc) {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function()
{
if (xhttp.readyState == 4 && xhttp.status == 200) {
cFunc(xhttp);
}
Cobalah sendiri "