Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Liste deroulante trop longue !!

12 réponses
Avatar
Enzo
Bonjour,

Pouvez-vous me dire s'il existe un moyen en PHP de saisir les premières
lettres de l'item recherché dans une liste déroulante et ainsi accéder plus
rapidement à l'information recherché.

Merci d'avance.

Enzo.

10 réponses

1 2
Avatar
Jedi121
Enzo wrote:
Pouvez-vous me dire s'il existe un moyen en PHP de saisir les
premières lettres de l'item recherché dans une liste déroulante et
ainsi accéder plus rapidement à l'information recherché.


Ca ressemble plus à du code côté client (sinon ça veut dire recharger la page
après chaque frappe et je ne pense pas que ce soit envisageable) donc il faut
s'orienter vers Javascript pas de solution PHP (côté serveur).

Avatar
nicolas champenois
Bonjour,

De quoi est composée ta liste et dans quel contexte l'utilises-tu?

Enzo wrote:
Bonjour,

Pouvez-vous me dire s'il existe un moyen en PHP de saisir les premières
lettres de l'item recherché dans une liste déroulante et ainsi accéder plus
rapidement à l'information recherché.

Merci d'avance.

Enzo.


Avatar
foodbyfood
ps : sur internet explorer, ça donne des sous menus, mais sur tous les
browser sur pc, ça ne fais que regrouper les options, avec un label au
dessus en gras. vive les macs (du moins sur ce plan la ;) )
Avatar
foodbyfood
"Enzo" wrote in message news:<bkf0se$8gn$...
Bonjour,

Pouvez-vous me dire s'il existe un moyen en PHP de saisir les premières
lettres de l'item recherché dans une liste déroulante et ainsi accéder plus
rapidement à l'information recherché.

Merci d'avance.

Enzo.



il est toujours possible maintenant de regrouper les options dans ton
select par <optgroup>.

exemple
<select name=vehicule>
<optgroup label="Camion">
<option valueÚf>Daf</option>
<option value=man>Man</option>
...
</optgroup>
<optgroup label="Voiture">
...
</optgroup>
</select>

Avatar
Philg42360
Pouvez-vous me dire s'il existe un moyen en PHP de saisir les premières
lettres de l'item recherché dans une liste déroulante et ainsi accéder
plus

rapidement à l'information recherché.
Je doute.

Par contre, si ta liste est remplie avec une bdd, tu met un champ texte avec
un bouton et tu fais un select like%% la partie recherchée. Ensuite tu
rappelles la page avec la liste expurgée.
Je me sers de cette methode pour rechercher des sites géographiques parmis
600 entrée de liste et ça convient aux utilisateurs.

--
--Philippe
Une commune de la Loire : http://panissieres.free.fr
Le parc des animaux miniatures http://zoonat.free.fr

Avatar
O.L.
(FoodByFood) wrote in
news::

<select name=vehicule>
<optgroup label="Camion">
<option valueÚf>Daf</option>
<option value=man>Man</option>
...
</optgroup>
<optgroup label="Voiture">
...
</optgroup>
</select>


Excellent !!!

Avatar
Moosh
(FoodByFood) wrote in
news::


<select name=vehicule>
<optgroup label="Camion">
<option valueÚf>Daf</option>
<option value=man>Man</option>
...
</optgroup>
<optgroup label="Voiture">
...
</optgroup>
</select>



Excellent !!!



J'ai aussi trouvé ca excellent mais __ATTENTION__ certains clients web
ancien supportent très mal cette option. (n'affichent pas toutes les
propositions)

Attention n°2. <optgroup> n'est pas imbricable

Pour la solution javascript, elle est développée dans un livre "php et
javascript" collection "cahiers du programmeur" chez Eyrolles .
livres avec couverture jaunatre

ou
http://www.toutjavascript.com/main/gorun.php3?s=listekey (attention
j'ai pas vérifié l'accessibilité de ce javascript)


Moosh


Avatar
Thibaut Allender
"Jean-Marc Molina" wrote in message
news:bkpi22$ltf$
- Un bouton pour mettre à jour la liste déroulante en fonction du texte
saisi, bien sûr cela doit recharger la page pour tout mettre à jour (champ
texte précédemment saisi y compris)
- La liste déroulante qui affiche les items correspondant au critère de
recherche


on peut eventuellement utiliser une iframe pour afficher le select, ca evite
de tout recharger

a+

--
+ thibaut allender // web design + php dev + digital photo
+ http://www.capsule.org

Avatar
Salagir
On 19 Sep 2003 17:50:03 GMT, in fr.comp.lang.php,
Enzo wrote:
Pouvez-vous me dire s'il existe un moyen en PHP de saisir les premières
lettres de l'item recherché dans une liste déroulante et ainsi accéder plus
rapidement à l'information recherché.


Il y a un moyen en javascript, que j'ai codé pour les mêmes raisons.

En voici l'exemple (profitez en pour voter yark yark.. désolé mais je
n'ai pas d'autres exemple sur le web, faudra ouvrir un compte, c'est
sans danger :)

http://franime.jeru.org/index.php?page=votes/voter.php


Sinon, le code tes inclus, a vous d'essayer:

---code javascript

<script type="text/javascript">
function DoSearch(tab) {
mot = eval ('document.forme.search' + tab + '.value');
mot = mot.toLowerCase();
sel = eval ('document.forme.select' + tab);
m = sel.length;
//on commence la recherche d'ou on est, si on ne le trouve pas, on recommence du début.
onest = sel.selectedIndex;
for (i=onest+1; i<m; i++)
if (sel[i].text.toLowerCase().match(mot)) break;
if (i<m) sel.selectedIndex = i;
else {
for (i=0; i<onest; i++)
if (sel[i].text.toLowerCase().match(mot)) break;
if (i<onest) sel.selectedIndex = i;
}
}
</script>


----code html

<form name="forme">

<select class='liste_anime' name='selectserie'>
<option value='VIDE'></option>
<option value='329'>A plein gaz - Futaridaka</option>
<option value='243'>Academie des ninjas - Sasuga No Sarutobi</option>
[...et encore une centaine comme ca.....]
</select>

<input name='searchserie' onKeyUp="DoSearch('serie');">
<input type='button' OnClick="DoSearch('serie');" value='Rechercher Suivant'>

</form>

----


Cross postage et suivit à fr.comp.lang.javascript
--
++++++++ Zelda, Dragon Ball, Mana and my (art)work at www.salagir.com ++++++++
Le cerveau a des capacités tellement étonnantes qu'aujourd'hui
pratiquement tout le monde en a un. -+- Perles du BAC -+-

Avatar
Jean-Marc Molina
Je n'osais pas parler de "Remote Scripting", merci Thibaut :)
Peut-être un peu trop complexe à mettre en oeuvre pour quelqu'un qui se pose
ce genre de questions, non ?
1 2