contoh aplikasi ajax

Langsung saja akan saya berikan contoh aplikasi Ajax
buat file
lat1.html
lat1.js
lat1.php
isi file lat1.html seperti code di bawah ini:


< html>
< head>
< title> Latihan Satu AJAX</title>
< script type="text/javascript" src="lat1.js"></script>
</head>
< body>
< table width="100%" align="center">
< tr>
< td align="center">
Coba anda tuliskan sebuah text pada form di bawah <br />
< input type="text" id="teksInput" onkeyup='proses()' />
< div id="hasilProses"></div>
</td>
</tr>
</table>
</body>
</html>

isi file lat1.js seperti code di bawah ini:


var xmlHttp = bikinXmlHttp();

function bikinXmlHttp() {
var xmlHttp;
if (window.ActiveXObject) {
try { //jika IE
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
xmlHttp = false;
}
} else {
try {
xmlHttp = new XMLHttpRequest();
} catch (e) {
xmlHttp = false;
}
}
if (!xmlHttp) {
alert("Gagal dalam membuat xmlHttpRequest Object");
} else {
return xmlHttp;
}
}

function proses() {
if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0) {
teks = encodeURIComponent(document.getElementById("teksInput").value);
xmlHttp.open("GET", "lat1.php?teks="+teks, true);
xmlHttp.onreadystatechange = responServer;
xmlHttp.send(null);
} else {
setTimeout('proses',1000); //jika sibuk ulangi dalam 1 detik
}
}

function responServer() {
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
xmlResponse = xmlHttp.responseXML;
xmlDocumentElement = xmlResponse.documentElement;
hasilTeks = xmlDocumentElement.firstChild.data;

document.getElementById("hasilProses").innerHTML = hasilTeks;
setTimeout('proses()',1000);
} else {
alert("Ada problem, method statusText adalah "+xmlHttp.statusText);
}
}
}

isi file lat1.php seperti code di bawah ini:



< ?php
header('Content-type:Text/xml');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';

echo '< response>';
$teks = htmlentities($_GET[teks]);

if (!empty($teks)) {
echo 'Teks yang anda masukkan adalah : '.$teks;
} else {
echo 'Silahkan Masukkan teks pada kotak input di atas';
}
echo '</response>';
?>


Dokumen lat1.js
Membuat object xmlHttp untuk melakukan transaksi data, karena antara IE dan browser yang lain beda, maka kita definisikan variabel xmlHttp adalah sebuah fungsi yang mengecek apakah browser yang dipakai IE atau bukan.
Untuk IE, xmlHttp di definisikan oleh ActiveXObject(”Microsoft.XMLHTTP”) sedangkan untuk browser yang lain, xmlHttp di isi fungsi XMLHttpRequest().
Setelah kita definisikan xmlHttp, kita bisa pakai object tersebut didalam fungsi yang lain. Fungsi proses() berisi xmlHttp.readyState, readyState adalah property dari xmlHttp, bisa bernilai 0-4, bernilai 4 berarti koneksi request sukses, yang berarti baris selanjutnya yang akan dieksekusi. Kita akan bahas detail tentang XMLHttpRequest di Bab selanjutnya.
Kemudian pada baris 3, pengambilan nilai dari dokumen dengan id “teksInput” yang tidak lain adalah input teks pada latsatu.html, kita namai nilai dari form itu sebagai variabel “teks”.

Properti onreadystatechange adalah untuk meminta respon server, yang akan di definisikan pada fungsi di bawahnya. Sedangkan setTimeout adalah fungsi javascript untuk mengulang dalam waktu 1 detik jika server sibuk.
Fungsi respon server di minta oleh fungsi proses(), readyState = 4 jika proses yang dilakukan object telah selesai dan properti status = 200 adalah respon akan mengembalikan nilai OK karena dokumen ditemukan pada waktu request.
responseXML merupakan property untuk mengembalikan respon dalam format XML
documentElement digunakan untuk mengambil root element pada dokumen XML
firstChild.data untuk mengambil nilai pada element pada dokumen XML
pada baris 7 id “hasilProses” pada dokumen HTML akan diberi nilai hasilTeks yang merupakan nilai dari dokumen XML.

0 Response to "contoh aplikasi ajax"