begin process at 2010 02 09 15:50:50
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

CSS

 > 

Général

 > 

Ajax - getelementsbytagname is not a function?


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

Ajax - getelementsbytagname is not a function?

jeudi 23 novembre 2006 à 04:55:55 | Ajax - getelementsbytagname is not a function?

jnbdzjnbdz

Bonjour, je travaille depuis un certain temps sur une application web faite avec ajax et PHP. Je viens de rencontrer un problème qui m'empêche d'avancer.

Le problème ses que mon application fait avec ajax peu seulement afficher le contenue dans un endroit, mais ses que la je veu qu'il affiche le contenue dans d'autres endroits. Avec se problème jai eu l'idée géniale d'organiser l'information envoyer par le serveur en le mettent dans un élément. Exemple :

<nssajax atrwhere="default">
<h2>Default</h2>
</nssajax>

<nssajax atrwhere="part1">
<h2>Part1</h2>
</nssajax>

L'attribut atrwhere sa ses la valeur du id du div qui vas recevoir le contenue.

Voici le code qui logiquement devrait marcher, mais pour une raison inexplicable ça ne marche pas...

getXhr();
                // on défini ce quon va faire quand on aura la réponse
                xhr.onreadystatechange = function(){
                    // On ne fait quelque chose que si on a tout reçu et que le serveur est ok
                    whereto();
                    if(xhr.readyState == 4 && xhr.status == 200){
                        //document.getElementById(where).innerHTML = xhr.responseText;
                        var ajaxcontent = xhr.responseText;
             
 for (i=0;i<ajaxcontent.getElementsByTagName("nssajax").length; i++) {
  
            var tagget = ajaxcontent.getElementsByTagName("nssajax").item(i);
            var idAttr = tagget.getAttributeNode("atrwhere");
            var vaofattr = idAttr.value;
            var valueoftherightitem = tagget.item(i);
            var innercontent = valueoftherightitem.innerHTML;
            document.getElementById(vaofattr).innerHTML = innercontent;
    }
                      
                    }
                };

si je fais une alert -> alert(ajaxcontent); sa m'affiche le contenue sans problème, mais le javascript bloque a getElementsByTagName("nssajax") il dit que se n'est pas une fonction. Voilà mon problème.

C'est vrai que jai inventer <nssajax atrwhere="part1">, mais sa je ne veu pas que ça affiche.

Liens à l'application:
www.jeannicolas.com/core/ajax_teste_get_atr_content_in_element.php

Merci pour votre aide.

(Et je dois m'excuser pour mon ortographe)
jeudi 23 novembre 2006 à 10:23:20 | Re : Ajax - getelementsbytagname is not a function?

roro06



Bonjour

Utilise plutôt ajaxcontent=xhr.responseXML

Cordialement
Roro webDev
jeudi 23 novembre 2006 à 13:24:23 | Re : Ajax - getelementsbytagname is not a function?

rubiks10

Membre Club
Evidemment que cela ne marche pas... car ajaxcontent est une chaine de caractère pas un élement DOM!!! donc comme l'a dit roro06 il faut utiliser responseXML etant donné que tu renvoies de l'xml par ajax.

@+

-- The Rubik's Man --
jeudi 23 novembre 2006 à 15:25:58 | Re : Ajax - getelementsbytagname is not a function?

jnbdzjnbdz

Rebonjour, jai oublier de vous dire que javais déjà essayer avec xhr.responseXML et que sa ne marchait pas.

Merci pour votre aide.

jeudi 23 novembre 2006 à 15:39:56 | Re : Ajax - getelementsbytagname is not a function?

roro06



Bonjour

Oui, ta réponse est actuellement envoyée en text/HTML.Il faut changer ton content-type en text/XML

Cordialement
Roro webDev
jeudi 23 novembre 2006 à 15:56:19 | Re : Ajax - getelementsbytagname is not a function?

jnbdzjnbdz

Ok, merci, mais comment...?

Merci pour ton aide.
jeudi 23 novembre 2006 à 16:03:21 | Re : Ajax - getelementsbytagname is not a function?

rubiks10

Membre Club
Bon alors essaye ca:

au lieu de :  var ajaxcontent = xhr.responseText;
fait : var ajaxcontent = document.createElement('div');
       ajaxcontent.innerHTML = xhr.responseText;

puis après la suite de ton code...

-- The Rubik's Man --
jeudi 23 novembre 2006 à 16:09:24 | Re : Ajax - getelementsbytagname is not a function?

roro06



Bonjour

Non non, je parlais de la réponse du serveur
Je ne connais pas trop le php, mais quelquechose comme :
header("Content-type : text/XML") 

(à se faire confirmer)

Cordialement
Roro webDev
jeudi 23 novembre 2006 à 17:20:24 | Re : Ajax - getelementsbytagname is not a function?

rubiks10

Membre Club
Oui pourquoi pas mais ma solution de creer un element temporaire fonctionne parfaitement..

A toi de choisir maintenant

-- The Rubik's Man --
vendredi 24 novembre 2006 à 04:35:20 | Re : Ajax - getelementsbytagname is not a function?

jnbdzjnbdz

Re, Rebonjour, merci encore une autre fois pour votre aide ses tres apprécier. rubiks10 j'aime beaucoup ton idée mais jai pas l'impression que sa marche avec mon système.

Jai essayer de mettre un content-type avec php et sa ne done rien. Firefox me renvoie le même message d'érreure ajaxcontent.getElementsByTagName is not a function.

Merci encore.

1 2

Cette discussion est classée dans : problème, var, ajax, xhr, getelementsbytagname


Répondre à ce message

Sujets en rapport avec ce message

problem ds ma fonction ajax [ par kate1910 ] bonjour tout le monde svp est ce que quelqu'un peut me dire c'est quoi le probleme dans ma fonction ajax,normalement cette derniére va permettre a de Interaction avec le serveur : AJAX + PHP [ par kate1910 ] bonjour , est ce que quelqu'un pourra me dire c'est koi l'erreur dans mon code : [code=js]function ajax() { var xhr=null; if (window.XMLH Pb d'utilisation de données chargées dans une div avec ajax [ par sagat06 ] Bonjour à tous, donc voilà: je rempli une div avec le contenu d'un fichier texte grâce à la fonction suivante trouvé sur Codes-sources => var mox; fun Liste déroulante qui masque la suivante si "non selectionné" [ par scoal ] Bonjour, J'ai 3 liste déroulante qui s'enchaine, le contenue de la seconde dépend du "select" de la première et de même pour la troisième en fonction Problème Parser XML Ajax sous Safari/Chrome [ par ju0123456789 ] Bonjour, Je rencontre un problème de parser XML dans une requete Ajax sous le navigateur Safari (Idem sous chrome). Je m'explique, la requete Ajax ( jquery et ajax formulaires [ par Annadrill ] bonsoir, j'aimerais savoir comment je dois m'y prendre pour recréer un script du type de celui ci-dessous pour jquery, le systeme étant que les cha créer des lien en ajax [ par baloc ] bonjour à tous.Je souhaite réaliser des liens en ajax. ça c'est la partie simple théorique. maisntenant l'autre partie. les liens sont des éléments d' Actualisation de liens lightwindow/ajax [ par niko008 ] Salut,Mon problème est le suivant:J'ai une page dans laquelle je charge différentes galeries d'image  dans un même div avec Ajax (C'est à dire une gal un formulaire n'est pas rempli par des infos transmis avec ajax [ par tiwtiwa11 ] Bonjour tout le monde,j'ai un problème que j'ai pas pu résoudre ça fait une semaine,je m'explique:j'ai une liste déroulante dans laquelle je choisis u Json et ajax, clé variable [ par kenshiroseifu ] Bonjour, Je récupère un json que je créé en java.Le fichier json : {"documentOriginalJson": object{<span


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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,608 sec (3)

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