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
| function getXhr(){
var xhr = null;
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;
}
return xhr;
}
function initxhr(id, file, variables, asyn)
{
//alert(xhr.readyState);
// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
/* liste des valeurs que peu prendre readyState
0 (uninitialized) non initialisé
1 (loading) début du transfert des données
2 (loaded) données transférées
3 (interactive) les données reçues sont accssibles en partie
4 (complete) les données sont complètement accessibles
ensuite on test statut qui est le code d'état de la réponse HTTP du serveur
*/
var xhr = getXhr();
// On défini ce qu'on va faire quand on aura la réponse
xhr.onreadystatechange = function (){
if(xhr.readyState == 4 && xhr.status == 200){
di = document.getElementById(id);
di.innerHTML = xhr.responseText;
}
}
if (asy=1)
{
asy=true;
}
else
{
asy=false;
}
// Ici on va voir comment faire du post
xhr.open("POST",file,asy); //false pour synchrone
// ne pas oublier ça pour le post
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
//alert(idauteur);
xhr.send(variables);
} |
Partager