Modif select avec onchange et lecture
Bonjour,
Je patauge depuis un certain temps avec ce problème: j'essaie de modifier un code trouvé dans un bouquin
1) un formulaire
2) un select dans lequel je mets quelques options imbriquées c'est à dire si la balise parente est sélectionnée, l'option imbriquée l'est également. l'inverse n'est pas vrai.
3) problème : je voudrais récuperer les options sélectionnées et les lire dans une fonction resultats()
LA SELECTION IMBRIQUEE SE FAIT NORMALEMENT MAIS JE NE PARVIENS PAS A RECUPERER LES OPTIONS CHOISIES DANS resultats() lorsque j'appuie sur envoyer
Je m'interroge égélement sur l'utilité de return false dans la fonction checkSelect()
voici le code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>sélection</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
//<![CDATA[
window.onload = setupEvents;
function setupEvents(evnt) {
document.someForm.selectOpts.onchange = checkSelect;
}
function checkSelect() {
opts = document.someForm.selectOpts.options;
for (var i = 0; i < opts.length; i++) {
if (opts[i].selected) {
switch(opts[i].value) {
case "Opt1" : opts[i + 1].selected = true;
break;
case "Opt3" : opts[i + 1].selected = true;
break;
case "Opt4" : opts[i + 1].selected = true;
break;
}
}
}
// pas de traitement côté serveur
return false;
}
function resultats()
{
}
//]]>
</script>
</head>
<body>
<form name="someForm" onSubmit="resultats()" >
<select name="selectOpts" multiple onchange = "checkSelect()" >
<option value="Opt1">Option Un</option>
<option value="Opt1a"> -- Option Un A</option>
<option value="Opt2">Option Deux</option>
<option value="Opt3">Option Trois</option>
<option value="Opt3a"> -- Option Trois A</option>
<option value="Opt4">Option Quatre</option>
<option value="Opt4a"> -- Option Quatre A</option>
<option value="Opt5">Option Cinq</option>
</select>
<input type="submit" value="Envoyer" />
</form>
</body>
</html> |