Utilisation de Request (Ajax) pour les listes
Je souhaite récupérer la liste de TOUS les éléments d'une liste déroulante via une requête asynchrone, mais je n'ai pas trouvé comment.
mon html :
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
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
<title>catalogue</title>
<meta http-equiv="Content-Language" content="fr" />
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
<script type="text/javascript" src="../scripts/js/mootools-core-yc.js"></script>
<script type="text/javascript" src="../scripts/js/mootools-more.js"></script>
<script type="text/javascript">
/* <![CDATA[ */
function getAjax() {
var maj_elt1 = new Request.HTML({
url : '_test_ajax.php',
method : 'post',
update : $('resultat'),
encoding : 'iso-8859-1',
headers : {'Accept': 'text/xml, application/xml, text/html'},
onComplete : function(response) {
$('resultat').value = $('fam2').options;
}
});
$('form_fam').addEvent('click', function(event) {
event.stop();
var listeoptions = $('fam2').options;
/* for (i=0;i<listeoptions.length;i++)
{
alert(listeoptions[i].value);//j'ai bien mes valeurs 139, 140 et 141
}*/
maj_elt1.send('fam='+$('fam2').options[0].value); //afficher 139 dans div#resultat
maj_elt1.send('fam='+$('fam2').options[1].value);//ne fonctionne évidemment pas
maj_elt1.send('fam='+$('fam2').options[2].value);//ne fonctionne évidemment pas
});
}
window.addEvent('domready', function() {
// alert($('fam2').options[0].value);
getAjax();
});
/* ]]> */
</script>
</head><body>
<form action="">
<fieldset>
<select multiple="multiple" id="fam2" name="fam2[]">
<option value="139">tulipes</option>
<option value="140">iris</option>
<option value="141">glaïeuls</option>
</select>
<select multiple="multiple" id="fam1" name="fam1[]">
<option value="2">materiel divers</option>
<option value="103">plastiques</option>
</select>
<input type="submit" value="Valider ces familles" id="form_fam" />
</fieldset></form>
<div id="resultat">VIDE</div>
</body></html> |
et mon code _test_ajax.php
Code:
1 2 3 4
| <?php
$fam = (isset($_POST['fam'])) ? $_POST['fam'] : '';
echo $fam;
?> |
Quelle est la bonne syntaxe ?
Je souhaiterais que s'affiche dans le div#resultat : 139, 140, 141
Merci d'avance