[RESOLU] Problème avec XmlHttpRequest : marche pas sous IE

Problème avec XmlHttpRequest : marche pas sous IE [RESOLU] - HTML/CSS - Programmation

Marsh Posté le 14-09-2005 à 17:40:19    

Bonjour à tous!
Voilà je n'arrive pas à bien utiliser l'objet XmlHttpRequest.
En fait, j'aurai besoin de remplir un champ texte lorsque l'utilisateur modifie la valeur d'une liste déroulante, et cela sans avoir besoin de recharger la page.
XmlHttpRequest est la réponse à ceux problème, mais il ne marche pas.
Voici en gros mon code :

Code :
  1. var http = getHTTPObject();
  2. var listeRefSel = document.getElementById('listeRef').value;
  3. http.open("GET", "volontaire/traitEtude.php?listeRefSel=" + escape(listeRefSel), true);
  4. http.onreadystatechange = handleHttpResponse(http);
  5. http.send(null);
  6. function handleHttpResponse(http) {
  7. if (http.readyState == 4) {
  8.  result = http.responseText;
  9.  document.getElementById('repos').value = result;
  10. }
  11. }


En fait, http.readyState renvoie toujours 1 j'ai l'impression
Si quelqu'un a déjà fait cela, merci de me venir en aide.


Message édité par leelounette le 16-09-2005 à 09:10:11
Reply

Marsh Posté le 14-09-2005 à 17:40:19   

Reply

Marsh Posté le 14-09-2005 à 18:30:20    

Reply

Marsh Posté le 14-09-2005 à 19:21:02    

Salut,
 
1) Fais une requète seule, avec un alert histoire de savoir si ça marche
2) Vérifie ta récupération d'info : la façon dont tu récupères l'info de ta liste déroulante me parait étrange (pas d'index, pas de "options" ).


---------------
Dans le monde, il n'y a que 10 sortes de personnes : ceux qui savent compter en binaire et ceux qui ne savent pas
Reply

Marsh Posté le 15-09-2005 à 09:21:40    

J'ai déjà été sur le site de openweb, mais ça ne marche pas...
Sinon la récupération de la liste déroulante marche, je l'ai testé... je vais encore chercher mais je me demande si cela ne vient pas de mon navigateur (mozilla)...

Reply

Marsh Posté le 15-09-2005 à 11:17:15    

Bon en fait j'ai réussit à faire marcher, maisle problème c'est qu'il n'arrive pas à trouver ma page php que je passe en paramètre de la fonction open.

Reply

Marsh Posté le 15-09-2005 à 11:21:02    

Ca y est,ça marche !
En fait, il faut que le php soit dans le même répertoire....
Mer ci à tous !

Reply

Marsh Posté le 15-09-2005 à 15:04:12    

Bon j'ai un autre problème maintenant : sous firefox, ça marche très bien mais sous IE pas du tout !!!
Le problème c'est qu'il faudrait que ça marche sous IE (mais je développe avec Firefox)...
Le problème est pour créer l'objet, j'ai le choix entre deux méthodes :
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP" );
ou
xmlhttp = new XMLHttpRequest();
 
Pour FF, la 2eme méthode marche, avec IE, aucune !!!

Reply

Marsh Posté le 15-09-2005 à 15:26:44    

utilise la classe xhrConnection  
http://xhrconnection.sutekidane.net/
 
vu ton niveau en JS ca te sera plus utile

Reply

Marsh Posté le 15-09-2005 à 16:22:28    

Bon, après quelques petits tests, je pense que c'est parce que la valeur de la liste déroulante est mal récupérée.
Sous FF, n'importe quelle syntaxe marche, mais pas sous IE...
J'ai essayé les syntaxes suivantes :
document.forms['formEtude'].elements['listeRef'].options[index].value
document.getElementById('listeRef').value
document.formEtude.listeRef.options[index].value
 
ou index est l'index sélectionné, mais rien n'y fait...

Reply

Marsh Posté le 16-09-2005 à 09:09:54    

Bon j'ai trouvé tout seul !
En fait c'était une erreur... humaine !
Merci à tous

Reply

Sujets relatifs:

Leave a Replay

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