2017-06-21 7 views
0

J'ai une implémentation de base de datalist où les options sont générées dynamiquement à partir d'une recherche de base de données que l'utilisateur tape. Toutefois, certaines suggestions ne contiennent pas la chaîne de requête dans leur valeur de sélection car la requête correspond à un champ dans son corps de document.Existe-t-il un moyen de remplacer le comportement d'auto-complétion datalist angulaire?

Ex: types d'utilisateurs dans 'ap'; la liste des suggestions transmises aux options datalist peut être ['pomme', 'salade de fruits'] car 'salade de fruits' peut contenir 'pomme' dans un champ enfant. Cependant, la «salade de fruits» ne serait pas visible en tant qu'option pour l'utilisateur car sa phrase ne contient pas la chaîne de requête «ap».

Y a-t-il un moyen de remplacer ce comportement par défaut? Sinon, qu'est-ce qui pourrait être une alternative rapide (ou est-il préférable de définir une directive personnalisée pour cela)?

Répondre

0

Je suppose que votre filtrage d'une liste de données via ng-model = [MODÈLE] et | filtre: [MODÈLE]. Si ce n'est pas le cas, alors je suis complètement éteint.

Cela devrait être corrigé dans les données que vous renvoyez. Inclure un autre champ avec des mots-clés ou une catégorie.

à savoir

[ 
{displayvalue:"Fruit Salad",keywords:"apple, health food,yummy yummy"}, 
{displayvalue:"Mashed Potatoes",keywords:"starch, side dish"} 
] 
+0

Désolé, aurait dû être plus précis dans ma question à ce sujet. Je filtre les options datalist complètement indépendamment de angulaire (c'est-à-dire qu'il se déroule comme un processus dans le back-end), et la base de données est trop grande et a trop de mots-clés connexes possibles pour rendre ce processus possible. Merci pour la réponse, cependant! – zrata