Recherche auto avec saisie dans une liste deroulante :
salut !
je voudrais que pour mes listes deroulantes, que l'on puisse saisir des caracteres et qu'au fur a mesure il rempli la zone par le champ similaire
exemple :
dans ma liste deroulante, j'ai: maison,mamam,papa,toto,tata,....
et je tape "to", et ca donne directement (sans faire de scrolling dans la liste) toto
pouvez-vous m'aider ?
@+
MaRRocK
voici une reponse de john.rocher@free.fr sur http://www.toutjavascript.com
voila, mais ce n'etait pas ce que j'attendais, mais c'est quand meme un element de reponse.
je n'ai pas demande a john si je pouvais mettre son script, mais j'indique son mail et le site où cette reponse a ete donnee qui est toutjavascript.com
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
je voulais ke la saisie se fasse directement dans la liste (et que la 1ere ligne de la liste soit vide pour la saisie), pouvez vous m'indiquer comment faire ???
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
voici le script donne par john:
<html>
<script>
function select_liste()
{
// on recupere le texte du fichier texte
txt = document.mon_form.cherche.value;
// on prend la longueur du texte
nb_carac = txt.length;
// on boucle sur toutes les entrées de la liste pour rechercher txt
for (x=0; x<document.mon_form.ma_liste.length; x++)
{
// on recupere la value de l'entrée
valeur = document.mon_form.ma_liste.options[x].value;
// si la chaine recherchée est + longue que valeur
// ce n'est pas la peine de rechercher car dans ce cas txt ne peut pas etre dans valeur
if (nb_carac <= valeur.length)
{
debut_valeur = "";
// on prend les nb_carac 1ers caractères de valeur
for (y=0; y<nb_carac; y++)
{
debut_valeur += valeur.charAt(y);
}
// c bon, le texte cherché se trouve dans cette entrée
if (debut_valeur == txt)
{
// on selectionne l'entrée
document.mon_form.ma_liste.selectedIndex = x;
// on arrete le script car on a trouvé et ce n'est pas la peine
// de continuer à chercher
return false;
}
}
}
}
</script>
<body>
<form name="mon_form">
<input type="text" name="cherche" size="30" onKeyUp="return select_liste()"><br>
<select name="ma_liste">
<option value="toto">toto
<option value="tata">tata
<option value="maman">maman
<option value="maison">maison
<option value="carioca">carioca
<option value="carambollage">carambollage
<option value="carambar">carambar
</select>
</form>
</body>
</html>
donc pouvez vous m'aider ?
je ne trouve rien qui parle de onKeyPress, onKeyUp,.....
@+
MaRRocK