L'affichage d'une image lors de la sélection d'une option dans une liste déroulante
J'essaye de modifier une image lors de la sélection d'une option dans une liste déroulante:
function volvoCar()
{
var img = document.getElementById("image");
img.src="volvo.png";
return false;
}
Et ainsi de suite pour chaque voiture.
<img id="image" src="Null_Image.png"/>
<select id="CarList">
<option onclick="nullCar()">No Car</option>
<option onclick="volvoCar()">Volvo</option>
<option onclick="audiCar()">Audi</option></select>
Je n'arrive pas à trouver quelque chose en ligne qui me donne une solution. Si c'est parce que je suis un phrasé il maladroitement ou parce que ce que je suis en train de faire est impossible avec le javascript, je ne sais pas.
- voir ce Comment Répondre[1] Il est Parfait : [1]: stackoverflow.com/a/3487274/1460591
Vous devez vous connecter pour publier un commentaire.
Au lieu de définir la
onClick
événement pour une option, définissez laonChange
événement pour le sélectionner.HTML
JavaScript
Voici un travail de démonstration
D'accord, vous êtes en train de faire plusieurs choses mal.
Votre fonction est appelée
volvoCar
et que vous tentez d'utiliser une fonction appeléeVolvoCar
- JavaScript est sensible à la casse.Ce n'est pas la meilleure façon d'attribuer un écouteur d'événement. Vous êtes en train d'ajouter dans le code HTML, ce qui est considéré comme "bordélique" (voir JavaScript Discret). Aussi, vous voulez joindre le
function
, pas le résultat de la fonction (dont vous faites par l'appelant). Les fonctions sont des objets de première classe en JavaScript.onclick
est un mauvais gestionnaire d'événement à utiliser dans ce cas. Vous souhaitez utiliser leonchange
gestionnaire de la<select>
élément.Donc:
HTML:
JS:
Cela peut être vu travailler ici!