HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
guilhem_mdg
Lézard à collerette
Messages : 438 Inscription : 18 juin 2004, 09:13
Message
par guilhem_mdg » 29 août 2006, 16:31
Bonjour,
La ligne :
Code : Tout sélectionner
document.getElementById('cleDocument').value=doc.getElementsByTagName('cledoc').item(0).firstChild.data;
fonctionne sous Mozilla mais pas sous IE...
Pourquoi ?
Cordialement.
Guilhem.
lpgc
Lézard à collerette
Messages : 259 Inscription : 16 juil. 2006, 01:02
Message
par lpgc » 29 août 2006, 21:28
bonjour,
j'ai fait quelques tests sur IE et Firefox, voici un code qui fonctionne...
sorry j'ai tj pas installé Opéra donc là je ne sais pas si c'est ok
Code : Tout sélectionner
<DIV id="oDiv">
<SPAN>Immediate Child
<DIV>
<SPAN>Child of Child DIV</SPAN>
</DIV>
</SPAN>
</DIV>
<SCRIPT>
var aSpans = oDiv.getElementsByTagName("SPAN");
alert ( aSpans.length + " " + aSpans[0].childNodes[0].nodeValue );
alert ( aSpans.length + " " + aSpans.item(0).firstChild.nodeValue );
</SCRIPT>
Cordialement
Christian
Message envoyé avec : Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
guilhem_mdg
Lézard à collerette
Messages : 438 Inscription : 18 juin 2004, 09:13
Message
par guilhem_mdg » 30 août 2006, 10:09
Euh, non, ta solution ne marche pas.
En fait, je réalise un traitement grâce à l'AJAX et ce traitement me renvoie une page XML.
Je la récupère en Javascript mais je n'arrive pas à récupérer la valeur du 1er noeud <versions>
Pouvez-vous m'aider ?
Merci.
PS: Je fait actuellement :
Code : Tout sélectionner
var doc = xhr_object.responseXML;
document.getElementById(id).innerHTML=doc.getElementsByTagName('message').item(0).firstChild.data;
Mais cela ne marche que sous Mozilla et pas sous IE...
Cordialement.
Guilhem.
chBok
Iguane
Messages : 991 Inscription : 17 oct. 2003, 19:17
Message
par chBok » 30 août 2006, 10:35
Et pour AJAX, tu utilises quelle méthode d'appel ? MSIE gère un objet
XMLHTTPrequest différent de celui de Mozilla Firefox.
lpgc
Lézard à collerette
Messages : 259 Inscription : 16 juil. 2006, 01:02
Message
par lpgc » 30 août 2006, 10:37
bonjour,
ce serait possible d'avoir le XML pour voir
le 1er noeud étant sous la racine je suppose
Cordialement
Christian
PS. Si c'est un problème avec responseXML, je sais pas...
j'ai préféré l'autre méthode responseText suite à cet article :
http://www.quirksmode.org/blog/archives ... tes_r.html
Message envoyé avec : Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
guilhem_mdg
Lézard à collerette
Messages : 438 Inscription : 18 juin 2004, 09:13
Message
par guilhem_mdg » 30 août 2006, 10:59
Code : Tout sélectionner
<script type="text/JavaScript">
//<![CDATA[
function makeRequestPostXML(url,parametres,id){
var xhr_object = null;
if(window.XMLHttpRequest)
xhr_object = new XMLHttpRequest();
else
if(window.ActiveXObject)
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else{
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
return;
}
var method = "POST";
var filename = url;
var data = parametres;
xhr_object.open(method, filename, true);
xhr_object.onreadystatechange = function(){
if(xhr_object.readyState == 4){
var doc = xhr_object.responseXML;
document.getElementById(id).innerHTML=doc.getElementsByTagName('message').item(0).firstChild.data;
document.getElementById('cleDocument').value=doc.getElementsByTagName('cledoc').item(0).firstChild.data;
document.getElementById('cadreVersions').innerHTML=doc.getElementsByTagName('versions').item(0).firstChild.data;
}
}
xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhr_object.send(data);
}
//]]>
</script>
url : fichier php qui génère le XML
Code : Tout sélectionner
header('Content-type:text/xml;charset=iso-8859-1');
echo "<document>";
echo "<cledoc>".$cleDoc."</cledoc>";
echo "<message>".date('H:i',time())." : Le document a été créé.</message>";
echo "<versions></versions>";
echo "</document>";
Cordialement.
Guilhem.
chBok
Iguane
Messages : 991 Inscription : 17 oct. 2003, 19:17
Message
par chBok » 30 août 2006, 11:38
A la limite, tu peux "débugguer" le résultat XML reçu grâce à
un sérializer :
Code : Tout sélectionner
var s = new XMLSerializer();
var doc = xhr_object.responseXML;
alert(s.serializeToString(doc));
Tu verras au moins quelle forme ont tes données dans le javascript.
guilhem_mdg
Lézard à collerette
Messages : 438 Inscription : 18 juin 2004, 09:13
Message
par guilhem_mdg » 30 août 2006, 11:54
Merci à vous, je viens de trouver.
En fait, l'erreur est provoquée parce que j'envoie des lettres accentuées dans mon fichier XML.
Marche pas :
Marche :
Par contre, comment faire pour mettre des lettres accentuées ?
Cordialement.
Guilhem.
lpgc
Lézard à collerette
Messages : 259 Inscription : 16 juil. 2006, 01:02
Message
par lpgc » 30 août 2006, 11:56
sorry,
juste ajouté :
<?xml version="1.0" encoding="ISO-8859-1" ?>
Code : Tout sélectionner
header('Content-type:text/xml;charset=iso-8859-1');
echo '<?xml version="1.0" encoding="ISO-8859-1"?>';
echo "<document>";
Cordialement
Christian
Message envoyé avec : Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
guilhem_mdg
Lézard à collerette
Messages : 438 Inscription : 18 juin 2004, 09:13
Message
par guilhem_mdg » 30 août 2006, 11:59
Résolu !
Merci à tous les gars ! Vous etes géniaux !
Cordialement.
Guilhem.
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité