Pb de compatibilité avec Ie et javascript :s

Fermé
StresS - 30 juin 2008 à 12:58
 StresS - 30 juin 2008 à 14:45
Bonjour, mon probleme est que je fais apparaitre un champ select au changement d'un autre select et que sous firefox cela fonctionne bien alors que sous Ie le champ apparait bien mais reste vide une idée ? en attendant voici le code :

//javascript
function sel()
{
if (document.liste.ListeUrl.selectedIndex == 0)
{
document.getElementById("sel2").style.visibility = "hidden";
}
if (document.liste.ListeUrl.selectedIndex == 1)
{
var es = '<option value="planche">Planches</option><option value="trucks">Trucks</option><option value="roues">Roues</option><option value="planche">Planches</option><option value="planche">Planches</option><option value="planche">Planches</option><option value="planche">Planches</option>';
document.getElementById("sel2").innerHTML = es;
document.getElementById("sel2").style.visibility = "visible";

}
if (document.liste.ListeUrl.selectedIndex == 2)
{
var ss = '<option value="planche">Planchesb</option><option value="trucks">Trucks</option><option value="roues">Roues</option><option value="planche">Planches</option><option value="planche">Planches</option><option value="planche">Planches</option><option value="planche">Planches</option>';
document.getElementById("sel2").style.visibility = "visible";
document.getElementById("sel2").innerHTML = ss;
}

}
//html

<FORM style="margin:0; padding:0;" action="index.php?page=action" method="post" name="liste" id="liste">
<SELECT NAME="ListeUrl" id="listed" SIZE=1 onChange="sel()" style="width:220px; background-color: #fff; color: #000; font-family:arial; font-weight:bold;">
<option value="0">Votre choix</option>
<option value="skate-board">Skate-Board</option>
<option value="snake-board">Snake-Board</option>
<option value="snow-board">Snow-Board</option>
<option value="roller">Roller</option>
<option value="trotinette">Trotinette</option>
<option value="vetement">Vêtements</option>
<option value="accessoire">Accessoires</option>
</SELECT>
<SELECT id="sel2" style="visibility:hidden;width:220px; background-color: #fff; color: #000; font-family:arial; font-weight:bold;">

</SELECT>

</FORM>

merci d'avance pour vos reponses
A voir également:

3 réponses

Bonjour,

Sous Ie on ne peut pas utiliser un innerHTML sur une balise select
0
je l'utilise pourtant sur d'autres site avec succes .... autres idées ?
0
StresS > StresS
30 juin 2008 à 13:27
arf desoler j avais pas vu dans le select :x
0
StresS > StresS
30 juin 2008 à 13:29
ya t'il un autre moyen ?
0
Oui il y a un autre moyen du genre :




var objtselect = document.forms.monform.monselect;
var dmc = document.createElement("option");
dmc.text = "Nouvelle" ;
dmc.value = "Nouvelle"; 


objtselect.add(dmc);


En gros ça doit etre ça.
0
oki je test et je te tiens au courant merci en tous cas :D
0
StresS > StresS
30 juin 2008 à 13:47
lol ca ne marche plus nul part maintenant- :D
j'ai fais ca :
var essai = document.forms.liste.ListeUrl;
var dmc = document.createElement("option");
dmc.text = "Planches" ;
dmc.value = "planche";
essai.add(dmc);
0
Salut,

je viens d'essayer ça a l'air de marcher comme ça :


var es = document.getElementById("sel2");

var dmc = document.createElement("option");
dmc.text = "Nouvelle" ;
dmc.value = "Nouvelle";
if(!document.all){
  before= es.options[1];
}else{
  before=1;
} 
es.add(dmc,before); 
}
0
erf non toujours pas :s :
var es = document.getElementById("sel2");
var dmc = document.createElement("option");
dmc.text = "Planches" ;
dmc.value = "planches";
if(!document.all){
before= es.options[1];
}else{
before=1;
}
es.add(dmc,before);
}
0
StresS > StresS
30 juin 2008 à 14:40
ah si cela fonctionne desoler j avai pas refermer mon accolade par contre encore une chose pour en rajouter plusieurs je recree des variables que je rajoute comme ceci ou pas :
dmc2.text = "Planches" ;
dmc2.value = "planches";
es.add(dmc,dmc2,before);

en tous cas merci du temps que tu as pris pour m'expliquer
0
StresS > StresS
30 juin 2008 à 14:45
j'ai reussi en faisant :
es.add(dmc,before);
es.add(dmc2,before);
ca peut etre optimisé ou pas ?
0