Salut,
Je te recommanderais de faire tout ceci autrement. Au lieux de t'embêter à naviguer dans le formulaire, repère donc l'élément avec un id (ou autre), c'est carrément plus simple. Une fois l'élément repéré, tu peux lui associer une fonction avec un évènement afin de faire ce que tu veux. Bref, le onchange dans le html on oublie. Voici quelques petits exemples :
Avec jQuery :
<!DOCTYPE html>
<html>
<head>
<title>test</title>
<meta charset="UTF-8">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
</head>
<form method="get" action="">
<select name="foo" id="foo">
<option value="toto">Toto</option>
<option value="titi">Titi</option>
<option value="tata">Tata</option>
</select>
<form>
<script type="text/javascript">
$(document).ready(function () {
$('#foo').change(function() {
alert('New value: ' + $(this).val());
});
});
</script>
</html>
Sans jQuery :
<!DOCTYPE html>
<html>
<head>
<title>test</title>
<meta charset="UTF-8">
</head>
<form method="get" action="">
<select name="foo" id="foo">
<option value="toto">Toto</option>
<option value="titi">Titi</option>
<option value="tata">Tata</option>
</select>
<form>
<script type="text/javascript">
(function() {
var sel = document.getElementById('foo');
if (sel !== null) {
sel.addEventListener('change', function() {
alert('New value: ' + this.value);
}, false);
} else {
console.error(sel);
}
})();
</script>
</html>