Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

selected = false, bug ie ?

6 réponses
Avatar
Jacques Meunier
Bonjour à tous

Est-ce un bug IE, une mauvaise syntaxe, si oui comment parvenir à mes fins ?

Ce code met bien le "selected" à false sous FF mais pas sous IE :

<html>
<head>
<script language="Javascript">
function verif()
{
nf = document.form1.selection
for (i=0;i<nf.length;i++)
{
if (nf.options[i].selected)
{
alert(nf.options[i].text)
nf.options[i].selected = false
alert(nf.options[i].selected)
}
}
}
</script>
</head>
<body>
<form name="form1">
<select id='selection' size='10' style='width : 200px' onClick='verif()'>
<option>Afghanistan</option>
<option>Afrique du sud</option>
<option>Albanie</option>
<option>Algérie</option>
<option>Allemagne</option>
<option>Andorre</option>
<option>Angola</option>
<option>Antigua</select>
</form>
</body>
</html>

Merci de votre aide

6 réponses

Avatar
Francis Spiesser
Jacques Meunier a pensé très fort :
Bonjour à tous

Est-ce un bug IE, une mauvaise syntaxe, si oui comment parvenir à mes fins ?

Ce code met bien le "selected" à false sous FF mais pas sous IE :

<html>
<head>
<script language="Javascript">
function verif()
{
nf = document.form1.selection
for (i=0;i<nf.length;i++)
{
if (nf.options[i].selected)
{
alert(nf.options[i].text)
nf.options[i].selected = false
alert(nf.options[i].selected)
}
}
}
</script>
</head>
<body>
<form name="form1">
<select id='selection' size='10' style='width : 200px' onClick='verif()'>
<option>Afghanistan</option>
<option>Afrique du sud</option>
<option>Albanie</option>
<option>Algérie</option>
<option>Allemagne</option>
<option>Andorre</option>
<option>Angola</option>
<option>Antigua</select>
</form>
</body>
</html>

Merci de votre aide


Tel que, je ne vois pas bien l'intérêt... Pour faire ce que tu veux,
function verif() {
nf = document.form1.selection
nf.selectedIndex=0;
}
sera plus efficace

--
______
Francis (enlever .NIPUBNISOUMIS)
Si la tartine tombe du côté non beurré, vous avez beurré le mauvais
côté.

Avatar
Francis Spiesser

Tel que, je ne vois pas bien l'intérêt... Pour faire ce que tu veux,
function verif() {
nf = document.form1.selection
nf.selectedIndex=0;
}
sera plus efficace


Evidememnt, c'est :
nf.selectedIndex=-1;

--
______
Francis (enlever .NIPUBNISOUMIS)
"Le présent n'est qu'un futur qui a vieilli"

Avatar
Jacques Meunier
"Francis Spiesser" a
écrit dans le message de news:


Tel que, je ne vois pas bien l'intérêt... Pour faire ce que tu veux,
function verif() {
nf = document.form1.selection
nf.selectedIndex=0;
}
sera plus efficace


Evidememnt, c'est :
nf.selectedIndex=-1;

--
______
Francis (enlever .NIPUBNISOUMIS)
"Le présent n'est qu'un futur qui a vieilli"



Je te remercie beaucoup.

C'est vrai que "l'esprit du code paraît idiot" comme ça, mais ta solution
convient parfaitement


Avatar
Olivier Miakinen

Est-ce un bug IE, une mauvaise syntaxe, si oui comment parvenir à mes fins ?

Ce code met bien le "selected" à false sous FF mais pas sous IE :

nf.options[i].selected = false


http://www.la-grange.net/w3c/html4.01/intro/sgmltut.html#h-3.3.4.2
« Les attributs booléens »

J'écrirais non pas :
nf.options[i].selected = true
nf.options[i].selected = false

mais :
nf.options[i].selected = "selected"
nf.options[i].selected = ""

Aurais-je tort ?

Avatar
Olivier Miakinen
Le 13/11/2006 12:22, j'écrivis :

http://www.la-grange.net/w3c/html4.01/intro/sgmltut.html#h-3.3.4.2
« Les attributs booléens »

J'écrirais non pas :
nf.options[i].selected = true
nf.options[i].selected = false

mais :
nf.options[i].selected = "selected"
nf.options[i].selected = ""

Aurais-je tort ?


Il semble que j'aurais tort en effet :

http://fr.selfhtml.org/javascript/objets/options.htm#selected
if(document.formulaire_test.choix.options[i].defaultSelected == true)
document.formulaire_test.choix.options[i].selected=true;

???

Avatar
Francis Spiesser
Olivier Miakinen avait énoncé :

Est-ce un bug IE, une mauvaise syntaxe, si oui comment parvenir à mes fins ?

Ce code met bien le "selected" à false sous FF mais pas sous IE :

nf.options[i].selected = false


http://www.la-grange.net/w3c/html4.01/intro/sgmltut.html#h-3.3.4.2
« Les attributs booléens »

J'écrirais non pas :
nf.options[i].selected = true
nf.options[i].selected = false

mais :
nf.options[i].selected = "selected"
nf.options[i].selected = ""

Aurais-je tort ?


Dans la mesure où le alert(nf.options[i].selected) renvoie true, ça
n'est probablement pas la bonne piste.

J'ai essayé en replacant onclick par onchange, mais ça n'est pas non
plus concluant. En fait, IE semble ne pas vouloir scier la branche sur
laquelle il est assis

--
______
Francis (enlever .NIPUBNISOUMIS)
Il y a 10 sortes de personnes : celles qui comprennent le binaire et
les autres