XML HttpRequest
Semua browser modern memiliki objek XMLHttpRequest bawaan untuk meminta data dari server.
Objek XMLHttpRequest
Objek XMLHttpRequest dapat digunakan untuk meminta data dari server web.
Objek XMLHttpRequest adalah impian pengembang , karena Anda dapat:
- Perbarui halaman web tanpa memuat ulang halaman
- Minta data dari server - setelah halaman dimuat
- Terima data dari server - setelah halaman dimuat
- Kirim data ke server - di latar belakang
Contoh XMLHttpRequest
Saat Anda mengetik karakter di bidang input di bawah, XMLHttpRequest dikirim ke server, dan beberapa saran nama dikembalikan (dari server):
Contoh
Contoh di atas dijelaskan dalam bab AJAX dari tutorial ini.
Mengirim XMLHttpRequest
Sintaks JavaScript umum untuk menggunakan objek XMLHttpRequest terlihat seperti ini:
Contoh
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
// Typical action to be performed when the document is ready:
document.getElementById("demo").innerHTML = xhttp.responseText;
}
};
xhttp.open("GET", "filename", true);
xhttp.send();
Contoh Dijelaskan
Baris pertama dalam contoh di atas membuat objek XMLHttpRequest :
var xhttp = new XMLHttpRequest();
Properti onreadystatechange menetapkan fungsi yang akan dieksekusi setiap kali status objek XMLHttpRequest berubah:
xhttp.onreadystatechange = function()
Ketika properti readyState adalah 4 dan properti status adalah 200, responsnya sudah siap:
if (this.readyState == 4 && this.status == 200)
Properti responseText mengembalikan respons server sebagai string teks.
String teks dapat digunakan untuk memperbarui halaman web:
document.getElementById("demo").innerHTML = xhttp.responseText;
Anda akan belajar lebih banyak tentang objek XMLHttpRequest di bab AJAX dari tutorial ini.
Versi Lama Internet Explorer (IE5 dan IE6)
Versi lama Internet Explorer (IE5 dan IE6) tidak mendukung objek XMLHttpRequest.
Untuk menangani IE5 dan IE6, periksa apakah browser mendukung objek XMLHttpRequest, atau buat ActiveXObject:
Contoh
if (window.XMLHttpRequest) {
// code for modern browsers
xmlhttp = new XMLHttpRequest();
}
else {
// code for old IE browsers
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}