[AJAX] XMLHttpRequest et Chrome
Bonjour,
J'ai un souci avec un script XMLHttpRequest et le navigateur Chrome :
La requête au module php s'exécute bien (le mail est envoyé par sendcontact.php), mais je n'ai ni message d'attente (normalement chargé dans une div, ni de message de retour avec Chrome...
Tout fonctionne bien avec IE et FF, mais impossible avec Chrome !
Pouvez vous me venir en aide ?
Merci d'avance.
Voici quelques lignes de script :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| function getXMLHttpRequest() {
var xhr = null;
if(window.XMLHttpRequest || window.ActiveXObject) {
if(window.ActiveXObject) {
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
} else {
xhr = new XMLHttpRequest();
}
} else {
alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest...");
return null;
}
return xhr;
} |
Code:
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
| function sendData_contact() {
//
var xhr = getXMLHttpRequest();
if(xhr && xhr.readyState != 0) {
xhr.abort();
}
xhr.onreadystatechange = function() {
var loading = document.getElementById('loading');
if(xhr.readyState == 4) {
if (xhr.status != 200) {
loading.innerHTML = "<p>Erreur</p>";
}
else {
loading.innerHTML = xhr.responseText;
}
}
else {
loading.innerHTML = 'Veuillez patienter, s.v.p<br><b>Envoi de votre message en cours ...</b><br><img src="/Fichiers/loading/loading.gif" alt="">';
}
}
var Params=""
var i=0;
var Elt;
while (Elt=document.forms['post'].elements[i] ){
if(Elt.value && Elt.type!='submit'){Params+="&"+Elt.name+"="+Elt.value;}
i++;
}
Params=Params.replace(/^&/,"")
//
xhr.open("POST", "../sendcontact.php", true);
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xhr.send(Params);
} |
Code:
1 2 3 4 5 6
| <?
echo'<div id="loading" align="center"><center>';
...
...... reste du formulaire
echo'</center></div>';
?> |