1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
| <html>
<head>
<title>Tutoriel Ajax (XHTML + JavaScript + XML)</title>
<script type='text/JavaScript'>
var xhr = null;
function getXhr(){
if(window.XMLHttpRequest) // Firefox et autres
xhr = new XMLHttpRequest();
else if(window.ActiveXObject){ // Internet Explorer
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
}
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
xhr = false;
}
}
// Node cleaner
function go(c){
if(!c.data.replace(/\s/g,''))
c.parentNode.removeChild(c);
}
function clean(d){
var bal=d.getElementsByTagName('*');
for(i=0;i<bal.length;i++){
a=bal[i].previousSibling;
if(a && a.nodeType==3)
go(a);
b=bal[i].nextSibling;
if(b && b.nodeType==3)
go(b);
}
return d;
}
/**
* Méthode qui sera appelée sur le click du bouton
*/
function gophp(){
getXhr();
// On défini ce qu'on va faire quand on aura la réponse
xhr.onreadystatechange = function(){
// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
document.getElementById("etatDiv").innerHTML = "Etat: " + xhr.readyState;
if(xhr.readyState >= 3)
{
document.getElementById("textDiv").innerHTML = "*";
reponse = clean(xhr.responseXML.documentElement);
document.getElementById("textDiv").innerHTML = reponse.getElementsByTagName("line").length;
}
}
xhr.open("GET","ajaxtr.php",true);
xhr.send(null);
}
</script>
</head>
<body>
<input type='button' value='TEST TR' onclick='gophp()'><br>
<div id="textDiv"></div>
<div id="etatDiv"></div>
</body>
</html> |
Partager