Loadxml() sous Firefox et Chrome

Résolu
sulfur82 - 20 déc. 2012 à 14:40
 sulfur82 - 24 déc. 2012 à 10:02
Bonjour,

J'ai un fichier index.html contenant les fonctions javascript nécessaire à charger le contenu d'un fichier xml et restituer son contenu dans le fichier index.html après avoir tester des paramètres récupérés dans le fichier xml (Dates)

Sous IE tout fonctionnent parfaitement mais sour Firefox et Chrome c'est une autre histoire, rien ne s'affiche.

Le problème viendrait il de la fonction loadxml ?

Voici mon fichier "index.html"

<html>
<head>
<script>

// Fonction Chargement du fichier XML
function loadXMLDoc(file)
{
try // IE
{
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
}
catch(e)
{
try // FF, ...
{
xmlDoc = document.implementation.createDocument("","",null);
}
catch(e) {alert(e.message)}
}
try
{
xmlDoc.async = false;
xmlDoc.load(file);
return(xmlDoc);
}
catch(e) {alert(e.message)}
return(null);
}


// Fonction Transformer date format jj/mm/aaaa en date format mm/jj/aaaa
function formatDate(date)
{
var chaine=date
var maDate=new Date()
 
var TabChaine=chaine.split('\/')
 
maDate.setDate(TabChaine[0]);
maDate.setMonth(TabChaine[1]-1);
maDate.setYear(TabChaine[2]);

return maDate;
}

 
// Fonction Obtenir Texte du fichier XML
function getTexte()
{
var xmlFile = loadXMLDoc("test.xml");
var texteCount = xmlFile.getElementsByTagName("texte").length;

var dateCourante = new Date();

var dateDebut = formatDate(xmlFile.getElementsByTagName("dateDebut")[0].childNodes[0].nodeValue);

var dateFin = formatDate(xmlFile.getElementsByTagName("dateFin")[0].childNodes[0].nodeValue);


if((dateCourante.getTime() >= dateDebut.getTime())&&(dateCourante.getTime() <= dateFin.getTime() ))
{
document.getElementById("message1").innerHTML += xmlFile.getElementsByTagName("texte")[0].childNodes[0].nodeValue;
}

document.getElementById("message2").innerHTML += xmlFile.getElementsByTagName("texte")[1].childNodes[0].nodeValue;

return dateDebut;
return dateFin;
}

</script>

</head>

<MARQUEE BEHAVIOR="scroll" DIRECTION="up" SCROLLAMOUNT="1" SCROLLDELAY="2" onmouseover="this.stop()" onmouseout="this.start()" HEIGHT="100%" WIDTH="100%">

 Message 1


 Message 2

</MARQUEE>


</html>


Merci de votre aide

6 réponses

TychoBrahe Messages postés 1309 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 5 juin 2013 12
23 déc. 2012 à 23:40
Salut,

Oui tu peux utiliser jQuery, c'est même très fortement recommandé. Vu le point où tu en est, tu peux tout recommencer avec jQuery, ce sera plus propre.
3
cs_L0ci Messages postés 224 Date d'inscription vendredi 26 novembre 2010 Statut Membre Dernière intervention 11 juin 2013 7
20 déc. 2012 à 16:50
Bonjour,

Le composant ActiveX n'est disponible que sous IE.
pour plus d'infos :
http://www.journaldunet.com/solutions/0701/070131-qr-activex.shtml
0
Merci de ta réponse.

Comment puis je palier à mon problème pour parser le fichier XML sous chrome et Firefox?
0
cs_L0ci Messages postés 224 Date d'inscription vendredi 26 novembre 2010 Statut Membre Dernière intervention 11 juin 2013 7
21 déc. 2012 à 08:46
Salut,

Je pense que la seule solution de remplacement possible est la suivante:
-un formulaire d'upload du fichier XML.
-le traitement coté serveur en php.
-l'affichage du résultat.

Il n'y a pas vraiment d'alternative au composant ActiveX (à ma connaissance) et ce n'est pas recommandé de l'utiliser pour des raisons de sécurité
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Salut,

Puis-je utiliser jQuery pour traiter le fichier xml pour IE, Firefox et Chrome?
0
Je reprend du début avec JQuery alors ^^

Merci de vos réponses.
0
Rejoignez-nous