Plusieurs listes déroulantes qui affichent une seule image
Dernière réponse : dans Programmation
Bonjour,
De nombreux sujets portent sur les listes déroulantes et la fonction onChange() mais aucun n'a pu résoudre totalement mon problème.
En effet, j'ai réalisé plusieurs listes déroulantes qui possèdent toutes les mêmes champs, j'ai attribué à chaque champs un lien vers une image spécifique puis la fonction javascript onChange() m'affiche l'image correspondante.
J'ai alors à gauche mes listes déroulantes et à droite l'image qui s'affiche.
Dès que je clique sur l'un des champs de l'une des listes déroulantes, je voudrais que l'image correspondante s'affiche à droite. Il n'y aurait donc toujours qu'une seule image qui s'affiche!
Voici mon code :
Si cette fonction s'exécute correctement pour une seule liste déroulante, elle ne fonctionne plus pour plusieurs.
D'où ma question : Est-il possible de n'afficher qu'une seule image avec une même fonction mais pour plusieurs listes déroulantes ?
De nombreux sujets portent sur les listes déroulantes et la fonction onChange() mais aucun n'a pu résoudre totalement mon problème.
En effet, j'ai réalisé plusieurs listes déroulantes qui possèdent toutes les mêmes champs, j'ai attribué à chaque champs un lien vers une image spécifique puis la fonction javascript onChange() m'affiche l'image correspondante.
J'ai alors à gauche mes listes déroulantes et à droite l'image qui s'affiche.
Dès que je clique sur l'un des champs de l'une des listes déroulantes, je voudrais que l'image correspondante s'affiche à droite. Il n'y aurait donc toujours qu'une seule image qui s'affiche!
Voici mon code :
<script LANGUAGE="JavaScript">
var current = 0;
function change(){
current=document.formname.place.selectedIndex;
document.images.show.src = document.formname.place[current].value;}
</script>
...
<form name="formname">
<select name="place" onChange="change();">
<option value="vide.png" selected="selected">Sélectionner</option>
<option value="img1.jpg">Champ1</option>
<option value="img2.jpg">Champ2</option>
</select>
<select name="place" onChange="change();">
<option value="vide.png" selected="selected">Sélectionner</option>
<option value="img1.jpg">Champ1</option>
<option value="img2.jpg">Champ2</option>
</select>
</form>
...
<img src="vide.png" name="show">
Si cette fonction s'exécute correctement pour une seule liste déroulante, elle ne fonctionne plus pour plusieurs.
D'où ma question : Est-il possible de n'afficher qu'une seule image avec une même fonction mais pour plusieurs listes déroulantes ?
Autres pages sur : plusieurs listes deroulantes affichent seule image
Lassé par la pub ? Créez un compte
KangOl a dit :
tu comprends au moins le code que tu executes ?parce que là, tous tes <select> ont le meme nom...
Bien sûr que je comprends. Justement, si j'ai mis le même nom, c'est pour que ce soit la même fonction qui s'exécute.
Parce que j'ai essayé de changer de "name" dans "select" (un "name" différent pour chaque select) et faire autant de fonctions qu'il y a de select mais ça ne fonctionne pas non plus dès lors qu'on exécute une fonction semblable !!
Ceci ne fonctionne pas non plus :
<script LANGUAGE="JavaScript">
var current = 0;
function change(){
current=document.formname.rang.selectedIndex;
document.images.show.src = document.formname.rang[current].value;
current=document.formname.place.selectedIndex;
document.images.show.src = document.formname.place[current].value;}
</script>
...
<form name="formname">
<select name="place" onChange="change();">
<option value="vide.png" selected="selected">Sélectionner</option>
<option value="img1.jpg">Champ1</option>
<option value="img2.jpg">Champ2</option>
</select>
<select name="rang" onChange="change();">
<option value="vide.png" selected="selected">Sélectionner</option>
<option value="img1.jpg">Champ1</option>
<option value="img2.jpg">Champ2</option>
</select>
</form>
...
<img src="vide.png" name="show">
Si quelqu'un trouve une solution, je suis preneur !!!
Merci d'avance
et si tu passais l'element a la fonction ??
et les "name" c'est fini
faut passer par l'id (qui est unique !)
function change(what) { document.getElementById("show").src = what.value; }
<select onchange="change(this);"> <option value="vide.png" selected="selected">Sélectionner</option> <option value="img1.jpg">Champ1</option> <option value="img2.jpg">Champ2</option> </select> <img src="vide.png" id="show">
et les "name" c'est fini
faut passer par l'id (qui est unique !)
J'ai essayé de m'inspirer de ce qui est inscrit pour faire mes modifications sur mon site. Car je veux aussi avoir deux listes déroulante, mais je n'y arrive pas. Et j'ai essayé avec l'ID au lieu du FORM NAME
Dans le HEAD j'ai ça :
function Lien() {
i = document.Choix.Liste.selectedIndex;
if (i == 0) return;
url = document.Choix.Liste.options.value;
parent.location.href = url;
}
Et dans mon body :
<FORM NAME="Choix">
<SELECT NAME="Liste" onChange="Lien()">
<OPTION VALUE="">Choisir une option
<OPTION VALUE="../../copains.html">Les copains
<OPTION VALUE="../../plongee/index.html">La plongée
<OPTION VALUE="http://www.google.com">Recherche
</SELECT>
</FORM>
Après modification selon la réponse proposé, j'ai tenté cela, mais en vain :
Dans la head :
<SCRIPT language="JavaScript">
function Lien(what) {
document.getElementById("show" ).src = what.value;
}
function Lien() {
i = document.Choix.Liste.selectedIndex;
if (i == 0) return;
url = document.Choix.Liste.options.value;
parent.location.href = url;
}
</script>
Dans le body :
<select onchange="Lien(this)" name="Liste"> <option>Choisir une option </option>
<option value="../../copains.html">Les copains </option>
<option value="../../..plonge/index.html">La plongée</option>
<OPTION VALUE="http://www.google.com">Recherche
/SELECT>
Dans le HEAD j'ai ça :
function Lien() {
i = document.Choix.Liste.selectedIndex;
if (i == 0) return;
url = document.Choix.Liste.options.value;
parent.location.href = url;
}
Et dans mon body :
<FORM NAME="Choix">
<SELECT NAME="Liste" onChange="Lien()">
<OPTION VALUE="">Choisir une option
<OPTION VALUE="../../copains.html">Les copains
<OPTION VALUE="../../plongee/index.html">La plongée
<OPTION VALUE="http://www.google.com">Recherche
</SELECT>
</FORM>
Après modification selon la réponse proposé, j'ai tenté cela, mais en vain :
Dans la head :
<SCRIPT language="JavaScript">
function Lien(what) {
document.getElementById("show" ).src = what.value;
}
function Lien() {
i = document.Choix.Liste.selectedIndex;
if (i == 0) return;
url = document.Choix.Liste.options.value;
parent.location.href = url;
}
</script>
Dans le body :
<select onchange="Lien(this)" name="Liste"> <option>Choisir une option </option>
<option value="../../copains.html">Les copains </option>
<option value="../../..plonge/index.html">La plongée</option>
<OPTION VALUE="http://www.google.com">Recherche
/SELECT>
PRISE II AVEC LA FONCTION CODE
J'ai essayé de m'inspirer de ce qui est inscrit pour faire mes modifications sur mon site. Car je veux aussi avoir deux listes déroulante, mais je n'y arrive pas. Et j'ai essayé avec l'ID au lieu du FORM NAME
Dans le HEAD j'ai ça :
Et dans mon body :
Après modification selon la réponse proposé, j'ai tenté cela, mais en vain :
Dans la head :
Dans le body :
J'ai essayé de m'inspirer de ce qui est inscrit pour faire mes modifications sur mon site. Car je veux aussi avoir deux listes déroulante, mais je n'y arrive pas. Et j'ai essayé avec l'ID au lieu du FORM NAME
Dans le HEAD j'ai ça :
function Lien() {
i = document.Choix.Liste.selectedIndex;
if (i == 0) return;
url = document.Choix.Liste.options[i].value;
parent.location.href = url;
}
Et dans mon body :
<FORM NAME="Choix">
<SELECT NAME="Liste" onChange="Lien()">
<OPTION VALUE="">Choisir une option
<OPTION VALUE="../../copains.html">Les copains
<OPTION VALUE="../../plongee/index.html">La plongée
<OPTION VALUE="<a href="http://www.google.com" target="_blank">http://www.google.com</a>">Recherche
</SELECT>
</FORM>
Après modification selon la réponse proposé, j'ai tenté cela, mais en vain :
Dans la head :
<SCRIPT language="JavaScript">
function Lien(what) {
document.getElementById("show" ).src = what.value;
}
function Lien() {
i = document.Choix.Liste.selectedIndex;
if (i == 0) return;
url = document.Choix.Liste.options[i].value;
parent.location.href = url;
}
</script>
Dans le body :
<select onchange="Lien(this)" name="Liste"> <option>Choisir une option </option>
<option value="../../copains.html">Les copains </option>
<option value="../../..plonge/index.html">La plongée</option>
<OPTION VALUE="<a href="http://www.google.com" target="_blank">http://www.google.com</a>">Recherche
/SELECT>
Lassé par la pub ? Créez un compte
- Contenus similaires :
- ForumPlusieurs image de manga
- ForumLister image php
- ForumPlusieurs disques sous une seule partition
- ForumPlusieurs conexion wifi avec une seule carte
- ForumPlusieurs sitessections joomla avec une seule administration
- ForumPlusieurs serveurs avec une seule ip publique
- ForumList style image et hover
- ForumResolu tout seul enregistrer une image avec un contour
- ForumFirefox affichage images une seule google
- ForumSoftware pour afficher image de plusieurs pc sur un seul ecran
- Voir plus