11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour à toutes et tous, ne connaissant absolument pas java, je cherche donc une méthode "simple" pour gerer une liste deroulante selon le choix d'une premiere (j'éspere ne être trop confu..).
Exemple, si je selectionne en option (dans une première liste déroulante):
choississez votre activité :
sport
mecanique
....

Je voudrais une liste differente, pour chaque option, dans une autre liste deroulante.
Je ne sais absolument par où commencer, si vous pourriez m'aigguiller ??
MErci
Modifié par declink (23 Feb 2007 - 07:41)
Bonjour.

Attention ! Je ne sais pas si c'est une faute de frappe mais Java et Javascript sont deux langages différents !
Je vais supposer que ton problème doit être traiter en javascipt...

(je vois mal ce que le java de chez Sun viendrait faire la dedant)...

Pour tout ce qui est traitement javascript, et si tu souhaites que ton site fonctionne sous n'importe quel navigateur je te conseille cette librairie:

http://www.prototypejs.org/download

Tu met ce javascript dans ton html

(<script language="javascript" type="text/javascript" src="script/prototype.js"></script> )

et ensuite ou que tu soit voici la procédure en javascript...

1) met un id a ton select...

2) récupère la valeur du select grâce a cette ligne en javascript

var valeur_du_select = $('nom de ton id').options[$('nom de ton id').options.selectedIndex].value;


La tu a récupérer la valeur de ta première combo... c'est à dire ça :

<option value="mecanique">mécanique</option>

ensuite dans ta page tu met un <div> n'importe ou avec un id (<div id="deuxieme_combo"></div>)

et tu remplis ta combo de cette manière :

$('deuxieme_combo').update("code html necessaire pour créer une combo");

Après a toi de faire des if ou un switch ou ce que tu veux...
Tous à fait , cela n'a rien avoir avec sun ( les laves vaisselles, non je deconne), c'est bien du javascript ...
Je vais tester ta manière de faire.
Merci pour cette reponse rapide !!
voici une petite solution



<form id="formulaire" action=" ">
<p>
<select name="boite1" onchange="choix(this.form)">
<option selected="selected">...........Choisissez une rubrique...........</option>

<option>choix 1</option>
<option>choix 2</option>
<option>choix 3</option>
</select>

<select name="boite2">
<option selected="selected">...........Choisissez une rubrique...........</option>
<option></option>
<option></option>
<option></option>
</select>
</p>
</form>


et la partie JS


function choix(fr)
{
	var j;
	var i = fr.boite1.selectedIndex;
	if (i == 0)
		for(j = 1; j <3; j++)
			fr.boite2.options[j].text="";
		
	
	else{
	switch (i){
		case 1 : var text = new Array( "Sous-choix 11","Sous-choix 12","Sous-choix 13");
			break;
		case 2 : var text = new Array("Sous-choix 21","Sous-choix 22","Sous-choix 23");
			break;

		case 3 : var text = new Array("Sous-choix 31","Sous-choix 32","Sous-choix 33");
			break;
	}

	for(j = 0; j<3; j++)
		fr.boite2.options[j+1].text=text[j];	
	}
	fr.boite2.selectedIndex=0;
}


Bon courage
declink a écrit :
Wep bien sur il est resolu, jusqu'a ma prochaine question !!lo:l
thank's
Merci dans ce cas de suivre le lien que je t'ai donné dans mon message précédent...