Fonction onchange sur select

Résolu
mem1307 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -  
mem1307 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Ci-dessous un petit code tout simple, je souhaiterai que lorsqu'on "selected" l'option 2, ou 3, dans le champs <option>, l'image correspondante soit chargé par default. Hors là ça ne fonction que si je change d'option avec ma sourie. Mais si je choisi par default une autre option il me change pas l'image au chargement de la page.

<table summary="layout table">
<tbody>
<tr>
<td rowspan="1" colspan="1">
<form action="../action/return.html" method="post" id="menuForm" name="menuForm" enctype="application/x-www-form-urlencoded">
<select id="select1" onchange="changeTest()" name="select1">
<option value="0">Choose a color</option>
<option value="1">Red Star</option>
<option value="2" selected="selected">Yellow Star</option>
<option value="3">Pink Star</option>
</select>
</form>
</td>
<td rowspan="1" colspan="1">
<table border="1" summary="layout table">
<tbody>
<tr>
<td rowspan="1" colspan="1">
<img id="testStar" height="35" alt="red star" src="img/color.jpg" width="35" border="0" name="testStar"></img>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>

<script>
imageArray = new Array("img/red.jpg", "img/yellow.jpg", "img/pink.jpg", "../images/starPink.gif"); altArray = new Array("", "Red Star", "Yellow Star", "Pink Star"); function changeTest () { var Index = document.menuForm.select1.options[document.menuForm.select1.selectedIndex].value; document.testStar.src = imageArray[Index]; document.testStar.alt = altArray[Index]; }
</script>


J'ai cherché un peu partout, sur tous les forums :(
j'espère que je me suis bien expliqué :p
Merci de votre aide,
A voir également:

1 réponse

Pitet Messages postés 2826 Date d'inscription   Statut Membre Dernière intervention   527
 
Salut,

Une solution simple semble être d'appeler la fonction changeTest() dès le chargement de la page. Il suffit donc d'ajouter un appel à cette fonction après sa déclaration par exemple :
imageArray = new Array("img/red.jpg", "img/yellow.jpg", "img/pink.jpg", "../images/starPink.gif"); altArray = new Array("", "Red Star", "Yellow Star", "Pink Star");
function changeTest() { var Index = document.menuForm.select1.options[document.menuForm.select1.selectedIndex].value; document.testStar.src = imageArray[Index]; document.testStar.alt = altArray[Index]; }
// appel de la fonction au chargement de la page
changeTest();


Bonne journée,
1
mem1307 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Merci beaucoup, :) très bonne journée également.
0