Pb AJAX+Firefox : readyState ne dépasse pas le 1

Pb AJAX+Firefox : readyState ne dépasse pas le 1 - HTML/CSS - Programmation

Marsh Posté le 11-04-2007 à 00:01:23    

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. function Ajout(id) {
  2. var oXMLHTTP = MakeXHR();
  3. if (!oXMLHTTP) return 0;
  4. oXMLHTTP.onreadystatechange = function() { CW_after_AJAX(oXMLHTTP, id); };
  5. sURLDATA = "php/ajout.php?id=" + id;
  6. oXMLHTTP.open ("POST", sURLDATA, true); // Envoie une requête à la page PHP spécifiée
  7. oXMLHTTP.send (null);
  8. }


 

Code :
  1. function CW_after_AJAX(oXMLHTTP, id) {
  2.   alert(oXMLHTTP.readyState);
  3.   if (oXMLHTTP.readyState==4) {
  4.     alert('yeah');
  5.   }
  6. }


 
et le MakeXHR :

Code :
  1. function MakeXHR() {
  2. var oXMLHTTP;
  3. var sURLDATA;
  4.  
  5. if(window.XMLHttpRequest){ // Firefox
  6.  oXMLHTTP = new XMLHttpRequest();
  7.     if (oXMLHTTP.overrideMimeType) oXMLHTTP.overrideMimeType("text/xml" ); // évite un Bug avec Safari
  8. }
  9. else if(window.ActiveXObject){ // Internet Explorer   
  10.   try {
  11.     oXMLHTTP = new ActiveXObject("Msxml2.XMLHTTP" );
  12.    } catch (e) {
  13.      try {
  14.         oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP" );
  15.        } catch (e){}
  16.      }
  17. }
  18. else{ // XMLHttpRequest non supporté par le navigateur
  19.  alert('XMLHTTPRequest objects are not supported (try Mozilla Firefox !)...');
  20.  return 0;
  21. }
  22. return oXMLHTTP;
  23. }


 
voilou,
merci !


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
Reply

Marsh Posté le 11-04-2007 à 00:01:23   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed