Bonjour à tous !
Je rencontre un petit problème. J'ai développé une application utilisant
plusieurs standards :
- XML pour le stockage des données
- XSL pour la mise en forme
- Javascript pour les opérations et les modifications DOM
- HTML pour la page de garde.
Les applets Javascript appellent les différentes feuilles XSL et passent
(parfois) des paramètres utiles. Sous firefox, aucun problème, ça marche du
tonnerre. Par contre, le passage à IE ne se fait pas sans mal... Voici les
morceaux de code incriminés :
Page HTML :
"javascript:void(0)"[1] onClick="envoi(document.choi.choixprof.value,
document.choi.choixnive.value, document.choi.choixsall.value,
document.choi.choixcale.value)">
Lors d'un clic sur le lien, la fonction envoi est appelée, et elle passe le
professeur, le niveau, la salle et la semaine chosis (il s'agit d'un emploi
du temps dynamique)
Javascript :
function envoi(prof, niv, sal, jou) {
if (document.implementation && document.implementation.createDocument) {
envoiMozilla(prof, niv, sal, jou);
} else {
envoiIE(prof, niv, sal, jou);
}
}
function envoiIE(prof, niv, sal, jou) {
if ((prof==0)&&(niv==0)&&(sal==0)) {
alert('Veuillez sélectionner une entité pour la visualisation
(professeur, niveau ou salle)');
} else {
if
(((prof!=0)&&(niv!=0))||((prof!=0)&&(sal!=0))||((niv!=0)&&(sal!=0))||((p{
alert('Veuillez sélectionner UNE ET UNE SEULE entité pour la
visualisation (professeur OU niveau OU salle)');
} else {
if (jou==0) {
alert('Veuillez sélectionner une semaine pour la visualisation');
} else {
var edtxml = new ActiveXObject("Microsoft.XMLDOM");
edtxml.async = false;
edtxml.load("edt.xml");
var edtxsl = new ActiveXObject("Microsoft.XMLDOM");
edtxsl.async = false;
edtxsl.load("edt.xsl");
edtxsl.selectSingleNode("//xsl:param[@name=\"id_jo\"]/@select").nodeValue =
"'" + jou + "'";
if (prof!=0) {
edtxsl.selectSingleNode("//xsl:param[@name='id_entite']/@select").nodeValue
="'" + prof +"'";
edtxsl.selectSingleNode("//xsl:param[@name='entite']/@select").nodeValue =
"'prof'";
} else {
if (niv!=0) {
edtxsl.selectSingleNode("//xsl:param[@name='id_entite']/@select").nodeValue
="'" + niv +"'";
edtxsl.selectSingleNode("//xsl:param[@name='entite']/@select").nodeValue =
"'niv'";
} else {
edtxsl.selectSingleNode("//xsl:param[@name='id_entite']/@select").nodeValue
="'" + sal +"'";
edtxsl.selectSingleNode("//xsl:param[@name='entite']/@select").nodeValue =
"'sal'";
}
}
var target = document.getElementById("emploitemps");
target.innerHTML = edtxml.transformNode(edtxsl);
}
}
}
}
XSL :
"http://www.w3.org/1999/XSL/Transform"[1]>
...
...
...
Les morceaux de code posant problème ont été mis en gras... Est-ce que
quelqu'un aurait LA solution magique ???
D'avance, merci infiniment !
Adrien D.
--- Links ---
1 <a
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Received on Wed May 17 19:39:28 2006