Je veux utiliser une liste déroulante, chaque fois que je clique sur le contenu, différentes images apparaîtront. Mais je ne veux pas utiliser la propriété 'value', parce que je veux utiliser les valeurs pour d'autres utilisations.comment changer l'image en utilisant la liste déroulante?
Exemple:
<select name='test'>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
<option value='4'>4</option>
</select>
Comment puis-je accomplir cela?
Merci.
Edit:
avec la suggestion de Pointy, cela fonctionne.
<select name="dpt" onChange="picture.src=this.options[this.selectedIndex].getAttribute('data-whichPicture');" >
<option value="1839" data-whichPicture='./imgs/t1.jpg' >01</option>
<option value="1661" data-whichPicture='./imgs/t2.png' >02</option>
</select>
</select>
<img src='' id='picture' />
Edit:
Il y a un problème, qui est si j'actualisez la page, la valeur par défaut l'image affiche mais la sélection dans la liste déroulante reste. Comment réparer ça?
Vous devez utiliser la notation de support pour faire référence à des propriétés avec un caractère spécial en JavaScript: 'this.options [ this.selectedIndex] ["data-whichPicture"] ' Voir: http://www.dev-archive.net/articles/js-dot-notation/ – RoToRa
J'ai essayé votre suggestion, cela ne fonctionne pas. –