Bonsoir a tous,
est ce que quelqu'un sais comment faire pour que l'autocompletion de jQuery UI prenne en compte que les items qui commence par les lettres entrées. Par exemple : par défaut si on les items suivants : ABCD, TAEV, RATG (c'est juste un exemple) et on tape la lettre A on a les trois items comme résultat, mais moi ce que je veut c'est de retourner que ABCD.

2 réponses


Ce lien peut t'aider :
http://jqueryui.com/autocomplete/ puis "Default functionality" et enfin "View source". La solution proposé est full JS (pas de code côté serveur genre php).
A noter que dans ton cas tu peux définir le champ minLength : 3 comme ci-dessous

$( "#tags" ).autocomplete({
      source: availableTags,
      minLength:3
 });

Pour ce qui est d'une source distante tu peux faire de la manière suivante :

$("#tags").autocomplete({
    source: 'datasource.php',
    minLength: 2,
});

Le fichier datasource.php peut se connecter à une bdd, y faire une requête du type "SELECT * FROM table WHERE champ LIKE "'%$debut'" " puis doit renvoyer du JSON avec le format suivant :

$tags] = array("id" => "id_du_tag", "label" => "label_du_tag", "value" => "value_du_tag");

Bien sur dans le cas d'une textbox seul la value est essentiel au final.

wYm
Auteur

Désolé mais par défaut ça ne fait pas ce que je recherche je pense que tu as mal lit ma question. Je sais que ça peut ce faire en PHP avec LIKE moi j'aimerai récupérer tout les items du premier coût pour ne pas faire une requête serveur a chaque fois.