Pb : selon option sélectionnée, input text apparait
Voilà, j'expose mon petit souci :
j'ai un formulaire avec liste déroulante. Je voudrais que si on sélectionne l'option "Autre" un champ input text apparait pour saisir une valeur qui ne se trouve pas dans la liste.
le html :
Code:
1 2 3 4 5 6 7 8
|
<form name="formulaire">
<select>
<option value="qqch">QQch</option>
<option onselect="WhenChecked()" name="autre" value="0">Autre</option>
</select>
<input type="text" id="nom_autre" style="display:none;">
</form> |
donc là, première question, quel évènement mettre ? onclick, onselect, onchange, ... ?
puis voici le javascript :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
function WhenChecked()
{
if (document.formulaire.autre.selected==1)
{
document.getElementById('nom_autre').style.display='';
}
else
{
document.getElementById('nom_autre').style.display='none';
}
} |
et là deuxième question :
"!document.formulaire.autre.selected" ou "document.formulaire.autre.checked==1"
ou autre ?
merci de votre aide !
;)
j'ai trouvé la réponse toute seule !
Code:
<select class="textfield" name="id_ville" onchange="RendVisibleVille(this.value)">
Code:
1 2 3 4
| <div id="test" style="visibility:hidden">
<label>Précisez </label>
<input type="text">
</div> |
dans le head
Code:
1 2 3 4 5 6 7 8 9
| <script language='javascript'>
function RendVisibleVille(texte)
{
if (texte=="autre")
document.getElementById("test").style.visibility= 'visible';
else
document.getElementById("test").style.visibility= 'hidden';
}
</script> |