twitter bootstrap de saisie semi-automatique déroulante / combobox avec Knockoutjs
J'ai une exigence où je dois utiliser bootstrap de saisie semi-automatique de liste déroulante, MAIS l'utilisateur peut avoir sous forme de texte dans cette liste, si elles le souhaitent. Avant de penser à la TypeAhead, je pourrais utiliser Bootstrap TypeAhead zone de texte, mais j'ai besoin d'avoir la liste déroulante parce que nous voulons donner à certaines valeurs par défaut comme anticipé des options au cas où les utilisateurs ne sais pas quoi chercher.
Je suis en utilisant ce avec MVC DropDownListFor comme qui crée une sélection pour nous.
J'ai trouvé cet article qui n'a que pour moi.
https://github.com/danielfarrell/bootstrap-combobox/pull/20
Tout ce que j'avais à faire était de décoller le nom de la commande de sélection et le contrôle a été de me laisser entrer sous forme de texte. Tout bon jusqu'ici.
Maintenant, je suis en utilisant ce en collaboration avec Knockoutjs. - Je lier mon options et de la valeur sélectionnée pour le contrôle de sélection, puis sur la ligne rendu de mon modèle, je l'ai appelé (sélecteur).zone de liste déroulante() qui rend le contrôle de sélection d'un bootstrap comobobox et ajoute un contrôle d'entrée et masque le contrôle de sélection dans les coulisses derrière.
Le problème est maintenant, quand j'essaie d'obtenir de lui des valeurs à des postes de serveur, puisque la valeur que j'ai mis dans la zone de saisie n'est pas valide options dans les options j'ai donné pour sélectionner le contrôle, il est toujours à la première option par défaut. C'est parce que, j'ai mis la liaison de la valeur sélectionnée sur une sélection de contrôle et non sur la zone de saisie qui a été créé par bootstrap-combobox.js.
Ma question est comment puis-je obtenir la boîte de saisie de données-lier de la même propriété que le contrôle de sélection a été lié.
D'autres options??
Laissez-moi savoir si vous avez besoin de plus de précisions ou des questions.
S'il vous plaît suggérer.
Grâce.
- J'ai trouvé une solution à ma situation. J'ai utilisé TypeAhead zone de texte au lieu de la saisie semi-automatique comobox et a montré les options de la liste déroulante par défaut lorsque les utilisateurs axé sur le contrôle ou de frapper vers le bas bouton de trop. De cette façon, ils savent ce qu'ils peuvent chercher qui était ma première exigence.
Vous devez vous connecter pour publier un commentaire.
Ont un coup d'oeil à Select2 pour Bootstrap. Il doit être capable de faire tout ce dont vous avez besoin.
Une autre bonne option est Selectize.js. Il se sent un peu plus naturel pour l'Amorçage.
La base de HTML5 datalist travail? C'est propre et vous n'avez pas à jouer avec le désordre de la troisième partie du code. W3SCHOOL tutoriel
La MDN Documentation est très éloquent et propose des exemples.
datalist
est qu'il ne prend pas en charge tous les événements DOM. Donc, chaque fois que vous sélectionnez une valeur, vous devez onglet en dehors de la zone de texte correspondanteSelect2 pour Bootstrap 3 natif plugin
https://fk.github.io/select2-bootstrap-css/index.html
ce plugin utilise select2 plugin jquery
nuget
H> Install-Package Choisir 2-Bootstrap
Carburant UX zone de liste déroulante a toutes les fonctionnalités que vous attendez.
Puis-je suggérer de http://www.jqueryscript.net/form/Twitter-Like-Mentions-Auto-Suggesting-Plugin-with-jQuery-Bootstrap-Suggest.html, fonctionne plus comme le post twitter suggestion où on vous donne une liste d'utilisateurs ou de sujets basé sur @ ou # tags,
voir la démo ici: http://www.jqueryscript.net/demo/Twitter-Like-Mentions-Auto-Suggesting-Plugin-with-jQuery-Bootstrap-Suggest/
dans celui-ci, vous pouvez facilement changer le @ et # pour tout ce que vous voulez
Bootstrap Tokenfield semble bon aussi: http://sliptree.github.io/bootstrap-tokenfield/