opeo31
Messages postés4Date d'inscriptionlundi 6 août 2007StatutMembreDernière intervention12 août 2008
-
11 août 2008 à 17:20
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 2013
-
12 août 2008 à 12:27
Bonjour,
j'ai un très gros souci sur mon code qui marche bien sur IE, mais plante sur Mozilla.
En effet il s'agit en gros de récupérer le choix d'un utilisateur, l'insérer dans un flux xml
qui est utilisé dans l'autre page. Le problème c'est l'affichage du choix de l'utilisateur et
et la construction du flux. Tout ça marche bien sous IE.
j'ai ajouté dans le code le teste des navigateurs, et j'ai les erreurs au niveau de :
xCrit.documentElement.appendChild ->(voilà ce que j'ai fait : xCrit.appendChild()..)
puiscell ligne.insertCell();->(ici j'ai fait cell ligne.insertCell(0); en incrémentant pour chaque cellule)
mais rien ne s'affiche. Je suppose que l'ajout d'attribut n'est pas pris en compte avec ce navigateur !
Voilà les codes :
<script language="JavaScript">
// création d'un objet xCrit
var tab=new Array(3);
var nbcrit = 0;
/*--
-->Ce code en commentaire marche bien sous IE
var xCrit = new ActiveXObject("MSXML.DomDocument");
xCrit.loadXML("<root />");
--*/
//--test (pour avoir le type de navigateur)
if(window.ActiveXObject){
var xCrit = new ActiveXObject("Microsoft.XMLDOM");
xCrit.loadXML("<root />");
var xCrit = document.implementation.createDocument("","",null);
xCrit.load("<root />");
}else{
alert("Votre navigateur ne prend pas cette méthode de recherche !");
}
//--fin test
var cptCrit = 0 ;
function Crite(ctype, csigne,cval) {
this.ltype = ctype;
this.signe = csigne;
this.valeur= cval;
}
function ajoutcrite(a,b,c){
tab[nbcrit++] = new Crite(a,b,c);
return true;
}
function ajoutCritere(){
var letype = document.MRB.ltype[document.MRB.ltype.selectedIndex].value;
var titre1 = document.MRB.ltype[document.MRB.ltype.selectedIndex].text;
var lesigne = document.MRB.signe.value;
var lavaleur = document.MRB.valeur.value;
maelob
Messages postés943Date d'inscriptionmardi 14 novembre 2006StatutMembreDernière intervention 7 août 20093 11 août 2008 à 21:51
Bonjour,
Quand on a un problème avec un code sous firefox le miex est de regarder les erreurs dans la console javascript ça nous permet en general de cibler plus facilement le problème.
<hr size="2" width="100%" />
Maelo ou Elo --> Mon blog Si quelqu'un vous dit : "Je me tue à vous le répéter", laissez-le mourir. (Jacques Prévert)
opeo31
Messages postés4Date d'inscriptionlundi 6 août 2007StatutMembreDernière intervention12 août 2008 12 août 2008 à 00:10
C'est justement ce que j'ai fait. En effet j'ai essayé de donner les erreurs et donner en suite comment j'ai fait en même temps j'ai donné tout le code.
Bien voilà les erreurs que j'ai rencontré :
xCrit.loadXML is not a function (je l'ai remplacé par xCrit.load)
xCrit.documentElement has not properties (en fait c'était pour xCrit.documentElement.appendChild que j'ai remplacé par xCrit.appenCild)
Avec ces corrections voilà les nouvelles erreurs :
Erreur : uncaught exception: [Exception... "Node cannot be inserted at the specified point in the hierarchy" code: "3" nsresult: "0x80530003 (NS_ERROR_DOM_HIERARCHY_REQUEST_ERR)" location: "monsite Line: 114"] (qui correspond à : xCrit.appenCild) alors je comprend plus ce qu'il faut faire. Alors j'ai remis le code qui y était avant(xCrit.documentElement.appendChild ) et j'ai alors l'ancienne erreur.
Je vous remercie de votre aide . Je suis long car j'essai d'apporter plus de précision .
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 12 août 2008 à 07:06
bonjour,
je vais peut-être dire une bétise...
mais je pense que FF cherche à charger un fichier, qui s'appelerait <root />
et ça lui fait tout drôle...
je ne sais pas si on trouve l'équivalent du loadXml de IE ?
à propos, il faut attendre la fin du chargement, on ne sait jamais.
var xCrit = new ActiveXObject("Microsoft.XMLDOM");
xCrit.onreadystatechange = function()
{ if (xCrit.readyState == 4 )
{ alert( xCrit.xml); }
}
xCrit.loadXML("<root>exemple</root>");
( ou alors mettre en synchrone )
Cordialement Bul [mon Site] [M'écrire], <!--
opeo31
Messages postés4Date d'inscriptionlundi 6 août 2007StatutMembreDernière intervention12 août 2008 12 août 2008 à 11:46
Bonjour,
en testant votre code voilà l'erreur reçu dans la console d'erreurs :
ActiveXObject is not defined et xCrit has not properties .
Je suis toujours coincé. Je vous remercie de votre aide.
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 12 août 2008 à 11:53
mon exemple était pour remplacer votre séquence avec IE
il ne fonctionnera pas come ça avec FF
vous aviez une séquence propre à FF et je disais :
je pense que FF cherche à charger un fichier, qui s'appelerait <root /> ( .load )
et ça lui fait tout drôle...
je ne sais pas si on trouve l'équivalent du loadXml de IE ?
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 12 août 2008 à 12:27
>> l'autre code marche bien avec IE
certes... mais ça pourrait dépendre des circonstances.
>> toujours coinçé avec FF.
hélas. faut trouver l'équivalent de loadXml, ce que je suis bien
incapable de faire, tout étant dans un patois auquel je ne comprend
que si peu... lire une doc ( avec des exemples ), j'arrive à m'en sortir,
faire une recherche... faut pas réver.
maelob ( plein de bises ) n'a pas ce souci, peut-être sait-elle....