[AJAX] AJAX+Firefox : readyState ne dépasse pas le 1
Hello
Tout est dit, j'envoie une requete, mais elle ne revient pas. Je fais des "alert(xhr.readyState)" dans le readystatechange, qui m'affichent 2 fois "1" puis plus rien.
Ca marche nickel sur le firefox de mon boulot, mais j'ai ce problème sur 2 PCs extérieurs, pourtant aussi sous FF 2.0, mais peut-être pas la mm mise à jour :/
Voila le code simplifié :
Code:
1 2 3 4 5 6 7 8 9 10
| function Ajout(id) {
var oXMLHTTP = MakeXHR();
if (!oXMLHTTP) return 0;
oXMLHTTP.onreadystatechange = function() { CW_after_AJAX(oXMLHTTP, id); };
sURLDATA = "php/ajout.php?id=" + id;
oXMLHTTP.open ("POST", sURLDATA, true); // Envoie une requête à la page PHP spécifiée
oXMLHTTP.send (null);
} |
Code:
1 2 3 4 5 6
| function CW_after_AJAX(oXMLHTTP, id) {
alert(oXMLHTTP.readyState);
if (oXMLHTTP.readyState==4) {
alert('yeah');
}
} |
et le MakeXHR :
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
| function MakeXHR() {
var oXMLHTTP;
var sURLDATA;
if(window.XMLHttpRequest){ // Firefox
oXMLHTTP = new XMLHttpRequest();
if (oXMLHTTP.overrideMimeType) oXMLHTTP.overrideMimeType("text/xml"); // évite un Bug avec Safari
}
else if(window.ActiveXObject){ // Internet Explorer
try {
oXMLHTTP = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){}
}
}
else{ // XMLHttpRequest non supporté par le navigateur
alert('XMLHTTPRequest objects are not supported (try Mozilla Firefox !)...');
return 0;
}
return oXMLHTTP;
} |
voilou,
merci !