begin process at 2012 05 30 08:41:34
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript et le navigateur

 > 

Autre

 > 

xml dans un pop-up


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

xml dans un pop-up

mercredi 19 septembre 2007 à 11:37:32 | xml dans un pop-up

bultez

Membre Club





bonjour à toutes et à tous,


                je ne parviens pas à résoudre :


un fichier xml :

<?xml version="1.0" encoding="ISO-8859-1"?>
<rep>
    <qui>
        <pre>gérard</pre>
        <nom>Menvussa</nom>
        <tel>0123456789</tel>
    </qui>
    <qui>
        <pre>gédéon</pre>
        <nom>Teuzeumani</nom>
        <tel>1234567890</tel>
    </qui>
</rep>

une page html :

<html>
<body>
<script type="text/javascript">
    var xml;
    if ( document.implementation.createDocument )
            xml=document.implementation.createDocument("", "", null);
    else    xml=new ActiveXObject("Microsoft.XMLDOM");
    xml.async=false;
    xml.load("test.xml");
    var r=xml.getElementsByTagName("rep")[0];
    for ( var q=0;q<r.getElementsByTagName("qui").length;q++ )
    {     var n=r.getElementsByTagName("qui")[q];
      alert(n.getElementsByTagName("nom")[0].firstChild.data);
    }
</script>
</body>
</html>


et tout baigne.


Mais si je fais, une page htm qui va créer un pop-up :

<html>
<body>
<textarea id="txt"
          name="txt">
<html>
<body>
<script type="text/javascript">
    var xml;
    if ( document.implementation.createDocument )
            xml=document.implementation.createDocument("", "", null);
    else    xml=new ActiveXObject("Microsoft.XMLDOM");
    xml.async=false;
    xml.load("test.xml");
    var r=xml.getElementsByTagName("rep")[0];
    for ( var q=0;q<r.getElementsByTagName("qui").length;q++ )
    {     var n=r.getElementsByTagName("qui")[q];
      alert(n.getElementsByTagName("nom")[0].firstChild.data);
    }
</script>
</body>
</html>
</textarea>
<script type="text/javascript">
    var doc=window.open("","test");
    doc.document.open();
    doc.document.writeln(document.getElementById("txt").value);
</script>
</body>
</html>

avec FF, dans le pop-up, il ne touve pas test.xml ( avec IE, c'est ok )
il faudrait mettre le nom du fichier en absolu,
    ce qui n'est bien sûr pas possible.

un window.open d'une page html qui contiendrait
    la séquence contenu dans le textarea : ça baigne.

ça semble bien donc être uniquement (?) quand
    le pop-up est créé de toutes pièces.

je fais quoi comme bétise ?

merci d'avance.


Cordialement                Bul         [mon Site]     [M'écrire]
En général, c'est absurde de généraliser.
mercredi 19 septembre 2007 à 18:08:39 | Re : xml dans un pop-up

AlexN

Salut bultez,

quelques arguments en défaveur d'ie :

- il est le navigateur le moins compatible avec les standards web (HTML, DOM, javascript, css)
- le seul moyen de trouver une erreur c'est d'utiliser le debugger microsoft que tu cites souvent dans tes réponses. Mais les messages du genre "vous avez une erreur ligne 5" ou "cet objet ne supporte pas cette propriété" sont plutôt obscurs. L'environnement de développement et surtout de mise au point est très pauvre. Voire inexistant. (Firebug dispose d'une console où afficher des informations en cours d'execution, le moyen equivalent dans ie c'est de créer un textarea, porte nawak quoi...)
- javascript 1.6 est supporté par FF depuis la version 1.5, ie7 ne le supporte toujours pas.

Personnellement, je commence toujours par vérifier mes programmes dans FF pour essayer d'avoir une approche compatible avec les standards, puis très souvent lorsque je vérifie dans ie je tombe sur des erreurs d'outre espace. C'est particulièrement pénible. Malheureusement je suis bien obligé de faire le necessaire puisque pratiquement 70% des internautes utilisent cet outil.

- quelques chiffres : [ Lien ]

CSS 2.1 standard support:
IE 6: 52%
IE 7: 54%
Firefox 1.5: 93%
Opera 8.5: 93%
Opera 9: 96%

La politique de microsoft, ce n'est pas de coller à de quelconque standards mais de créer un système propriétaire et clos. Si pour toi, utiliser des hacks pour rendre ie compatible c'est un plaisir, pour moi c'est une plaie et une perte de temps. Je travaille dans le developpement web. Mais on ne doit pas faire le même métier...
Enfin si tu as des arguments en sa faveur je reste à l'ecoute.
jeudi 20 septembre 2007 à 08:55:43 | Re : xml dans un pop-up

bultez

Membre Club
je te remercie grandement pour tes explications.
ça m'aide particulièrement pour résoudre le problème exposé
(
avec FF, mais qui m'est probablement imputable).

Cordialement                Bul         [mon Site]     [M'écrire]
En général, c'est absurde de généraliser.
jeudi 20 septembre 2007 à 10:00:14 | Re : xml dans un pop-up

AlexN

Première remarque : ferme ton flux. Comme la porte quand tu quittes une pièce
doc.document.close();
Sinon le navigateur tourne en rond, attendant justement la commande de fermeture.
Deuxième remarque :
Tu crées un document dans un textarea puis tu l'envoies dans un autre document (ton popup) c'est particulièrement tordu. Tu pourrais tout simplement créer un document réel (un fichier popup.html) avec tout ce que tu as mis en bleu et faire une ouverture de ce document par window.open('popup.html'...)
Trois : un copier coller de ton truc et ca marche. Je ne vois pas où est le problème.

jeudi 20 septembre 2007 à 10:12:54 | Re : xml dans un pop-up

bultez

Membre Club

une nouvelle fois : merci. t'es trop fort.
Hypocrite.gif    avec tes nouvelles explications, ça devrait fonctionner maintenant. 


pour les autres intervenants, j'aurais probablement du simplifier ma question :

<html>
<body>
<textarea id="txt"
          name="txt">
<html>
<body>
<script type="text/javascript">
    alert(window.location.href);
</script>
</body>
</html>
</textarea>
<script type="text/javascript">
    var doc=window.open("","test");
    doc.document.open();
    doc.document.writeln(document.getElementById("txt").value);
    doc.close();
</script>
</body>
</html>

avec FF, on affiche "file://" ( au lieu du chemin+nom de la page html )

en attendant, je détourné le problème en reconstruisant
    le chemin absolu avec le location.href de la page mère.


Cordialement                Bul         [mon Site]     [M'écrire]
En général, c'est absurde de généraliser.
vendredi 21 septembre 2007 à 05:52:56 | Re : xml dans un pop-up

bultez

Membre Club
Réponse acceptée !





était-ce une question stupide ?
quand on crée une pop-up comme ici,
    IE considère qu'on est dans le même répertoire,
    FF qu'on est "nulle part".
il suffit de le savoir  pour agir en conséquence.

merci à tous moins un.


Cordialement Bul [mon Site] [M'écrire]
En général, c'est absurde de généraliser.
Si une question n'est jamais stupide, certaines réponses laissent parfois réveur...


Cette discussion est classée dans : var, pop, xml, document, getelementsbytagname


Répondre à ce message

Sujets en rapport avec ce message

GetElementByTagName dans un tableau [ par jubourbon ] Bonjour à tous,J'ai une fonction, qui me permet de recuperer des avleurs dans un tableau, de rechercher des Expressions Regulieres, puis de les modifi Question [ par ichigokurosaki ] Bonjour,Bon voilà, j'ai un petit souci avec ce code :test  var saisie = ""; var compteur = 1; envois de formulaire ajax [ par Annadrill ] bonjour,voilà, j'aimerais modifier la fonction que je vous mets la dessous, de manière a pouvoir l'utiliser avec n'importe quel formulaire, en précisa lien url dans tableau dynamique ! [ par san67 ] Bonjour tout le monde, petit souci en ce mardi matin :)Alors voila j'ai un tableau dynamique en javascript et j'aimerai que dans une partie du tableau Problème de création javascript dynamiquement [ par GoldPegasus ] Bonjourj'ai un soucis avec des élements que je crée dynamiquementvoici le code      var ligne = document.createElement("tr");   var col = document.cre Combiner deux codes [ par Rush3r ] Bonjour, Je ne connais pas grand chose en Javascript, néanmoins je souhaite ajouté a mon site quelques fonctions que j'ai déjà repérés ici.Le problème Javascript pour gadget windows [ par alcapone29 ] Bonjour tout le monde,Voila j'ai quelques soucis avec un code Javascript pour mon gadget windows, donc je vous donne un peu le topo :- Dans un formula extraire donnée d'un fichier XML et Google AJAX APIs [ par zamubudio ] Hello, Je debute en prog HTML et j'essaye d'afficher les données contenues dans un fichier XML, en utilisant les fonctions déja creer par Google AJAX Probleme de boucle for (avec 1 element) [ par akh550 ] Bonjour à tous,J'ai un petit problème de boucle "for", la voici:for ( var n=0;n    {    if ( document.ResultForm.cellule[n].checked )        {    aler Probleme de boucle for (avec 1 element) [ par akh550 ] Bonjour à tous,J'ai un petit problème de boucle "for", la voici:for ( var n=0;n    {    if ( document.ResultForm.cellule[n].checked )        {    aler


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

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 : 1,264 sec (4)

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