begin process at 2012 05 29 01:51:40
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

Javascript et ActiveX

 > 

Autre

 > 

Ajax : variable de réponse


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Ajax : variable de réponse

lundi 19 mai 2008 à 14:48:55 | Ajax : variable de réponse

chapata

Bonjour à tous,

(j'espère avoir posté dans le bon endroit ...)

voilà je suis débutant en Ajax, je me suis inspiré des différentes méthodes sur le forum. mais j'ai un problème de taille, qui me semble super simple à régler mais, sans succès (d'où ma question).

Mon code : ajax.js

var httpObj = null;
var httpStr = null;
var elmtHtml = null;

function sendRequest( httpStr , elmtHtml ) {

 if ( window.XMLHttpRequest ) {
  // Objet XmlHttpRequest pour les moteurs GECKO
  httpObj = new XMLHttpRequest();
 } else if ( window.ActiveXObject ) {
  // Objet XmlHttpRequest pour Internet Explorer
  httpObj = new ActiveXObject( 'Microsoft.XMLHTTP' );
 } else {
  // Navigateur non-compatible
  alert( 'Votre navigateur ne supporte pas les objets XMLHTTPRequest...' );
  return;
 }

 // On ouvre la requete vers la page désirée
 httpObj.open( 'GET', httpStr, false );
 // On lui donne le pointeur de fonction de retour
 httpObj.onreadystatechange = returnRequest;
 // On envoi la requete
 httpObj.send( null );
}


function returnRequest() {
 // Sur le retour de la requete, on teste son état
 if ( httpObj.readyState == 4 && httpObj.status == 200) 
  // On injecte notre retour dans la DIV prevue a cet effet
  document.getElementById(elmtHtml).innerHTML = httpObj.responseText;
 }
}

mais elmtHtml a la valeur "null".
Si je positionne des alert(elmtHtml) dans 'sendRequest()', j'obtiens bien 'ma variable' mais dans la fonction 'returnRequest()' elmtHtml a la valeur Null.

Je suis obligé d'écrire en dur dans returnRequest() ma variable. et ca, je ne le veux pas...

Si une personne pouvait m'aiguiller afin de régler ce petit souci ... ce serait super !
merci d'avoir au moins lu ce message.

ChaPaTa

/FONT>
lundi 19 mai 2008 à 14:53:02 | Re : Ajax : variable de réponse

bultez

Membre Club
Bonjour,
    à priori, rien à voir avec AJAX ( même si je n'ai pas controlé la séquence )
    c'est quoi elmtHtml ? t'es sûr que ce n'est pas "elmtHtml"   ?

                Cordialement            Bul         [mon Site]     [M'écrire]
lundi 19 mai 2008 à 15:03:33 | Re : Ajax : variable de réponse

chapata

Hello ,


elmtHtml est la balise <div = "divAjaxCalendrier">... patati patata ...</div> devant réceptionner le retour de returnRequest().

bien évidemment j'ai toutes mes fonctiones coté serveur fonctionnant (php).

ca marche tres bien dans mon code js si je mets :
document.getElementById('divAjaxcalendrier').innerHTML = httpObj.responseText;
mais pas du tout si je mets le nom donner à ma variable ... (ici : elmtHtml)

la fonction
   >   function sendRequest( httpStr , elmtHtml )
prend comme argument l'url passée et l'applique à
   > httpObj.open( 'GET', httpStr, false );
en retour j'attends donc une réponse au changement du statut :
   > httpObj.onreadystatechange = returnRequest;

et la fonction returnRequest() envoie à mon elmtHtml ma réponse.


ChaPaTa
/FONT>
lundi 19 mai 2008 à 15:12:04 | Re : Ajax : variable de réponse

bultez

Membre Club
a marche tres bien dans mon code js si je mets :
>       
document.getElementById('divAjaxcalendrier')....
    donc...
elmtHtml n'est pas = document.getElementById('divAjaxcalendrier')
             ou pas une variable globale ou...
    à priori ne cherche pas ailleurs.

                Cordialement            Bul         [mon Site]     [M'écrire]
lundi 19 mai 2008 à 15:13:26 | Re : Ajax : variable de réponse

Zobibol

Membre Club
Réponse acceptée !
Salut, pour ce qui est de passer par une variable globale, à mon avis, c'est pas le top, si tu balances plus d'une requête ajax simultanément, ça risque de planter..
L'erreur est très très probablement dûe au fait que la variable globale elmtHtml  n'est jamais initialisée

essais donc

function sendRequest( httpStr , _elmtHtml) {

 elmtHtml = _elmtHtml;

 if ( window.XMLHttpRequest ) {
  // Objet XmlHttpRequest pour les moteurs GECKO
  httpObj = new XMLHttpRequest();
 } else if ( window.ActiveXObject ) {
  // Objet XmlHttpRequest pour Internet Explorer
  httpObj = new ActiveXObject( 'Microsoft.XMLHTTP' );
 } else {
  // Navigateur non-compatible
  alert( 'Votre navigateur ne supporte pas les objets XMLHTTPRequest...' );
  return;
 }

 // On ouvre la requete vers la page désirée
 httpObj.open( 'GET', httpStr, false );
 // On lui donne le pointeur de fonction de retour
 httpObj.onreadystatechange = returnRequest;
 // On envoi la requete
 httpObj.send( null );
}

pour voir un peu !

[o-_-o]
lundi 19 mai 2008 à 15:18:27 | Re : Ajax : variable de réponse

chapata

Hello ,

OK, cool pour les réponses. Effectivement, la varaible n'était jamais initialisée. donc maintenant c'est fait.

je vais pouvoir continuer ...

Big Up à vous 2 !

ChaPaTa
/FONT>
lundi 19 mai 2008 à 15:23:34 | Re : Ajax : variable de réponse

Zobibol

Membre Club
si j'étais toi, j'utiliserais plutôt le framework prototype.js qui va te rendre beaucoup plus service (et t'aurais éviter cette erreur), mais bon, ce que j'en dis euh, j'écris  ;o)

[o-_-o]
lundi 19 mai 2008 à 15:31:53 | Re : Ajax : variable de réponse

chapata

j'en ai déjà entendu parler (plutot lu) mais jamais testé.
quand j'aurai le temps ... je regarderai. Pour le moment je débute ...

je suis sur un calendrier de planification de lot de facturation client, alors j'ai pas trop le temps de m'amuser.

J'utilise Ajax pour éviter de rechargé la page, lorsque que je survole mes dates et me balades dans mon calendrier. Du coup l'utilisateur visualise les données intuitivement.

j'ai peur que si j'utilise framework prototype.js maintenant je n'utilise pas tout ... enfin à voir...

ChaPaTa
/FONT>


Cette discussion est classée dans : variable, ajax, xmlhttprequest, httpobj, elmthtml


Répondre à ce message

Sujets en rapport avec ce message

Ajax et IE7 [ par arnaultp ] Bonjour à tous!Je viens de me mettre à l'AJAX, et en reprenant un tutorial j'ai une erreur (voire 2 d'ailleurs) qui apparaît et que je n'arrive pas à Chargement d'un constructeur à partir d'une variable [ par kbalevil ] Voici mon soucis :Je charge un élément via ajax, jusque là tout va bien, et ensuite je dois initialiser ce composant (placement, valeures de départ), Rechargement d'objet "AJAX" [ par benjiman2 ] Bonjour !Voila, je commence tout juste a programmer en AJAX ...et voila mon probleme ...Je voudrai que chaque 2 secondes, la page se rafraichisse dans Variable Javascript VS Php [ par Eckmoule ] Bonjour, Je suis entrain de creer un site qui est principalement basé sur php mais pour lequel j'essaye d'inclure de l'ajax à l'aide de Jquery pour re Problème d'affichage dans AJAX [ par cool0501 ] Bonjour tout le monde,J'aurai voulu savoir si quelqu'un connaissait une fonction ou une méthode permettant d'afficher l'intégralité d'une variable (av tranfert variable.php [ par f6ggy ] bonjourJe ne connais pas AJAX.voila la quetion:Si je me sers de ceci le chargement de la page enecheresG.php est OK    AfficheInnerHTML("","AJAX_GAUCH variable [ par tonytruand ] BonjourLa réponse est certainement toute bête, mais je ne m'en sors pas.Je me sers de XMLHTTPREQUEST pour extraire la source de fichiers; pour le nom Comment exécuter une procédure qui est affecté à une variable. [ par denisboutet ] Bonjour, je souhaite généraliser une procédure ajax. J'ai une procédure qui fait un appel ajax généralisé. appelajax(proceserveur,procnavigateur,par [jQuery] Faire sortir une variable de $.ajax [ par kilhom ] Bonjour à tous ! Voilà je suis débutant en javascript et j'ai quelque soucis avec une fonction (ajax) de jQuery. J'aimerais pouvoir faire sortir la va probleme internet explorer et ajax [ par momo11985 ] Bonjour J'ai réaliser une application d'autocompletion en ajax.Cette application marche très bien avec firefox mais ne fonctionne pas sous internet


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,827 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales