J'ai une exigence où JE DOIS utiliser la liste déroulante de saisie semi-automatique de bootstrap, MAIS l'utilisateur peut avoir un texte de forme libre dans cette liste déroulante s'il le souhaite. Avant de penser à TypeAhead, je pourrais utiliser la zone de texte Bootstrap TypeAhead, mais je dois avoir la liste déroulante car nous voulons donner des valeurs par défaut comme options de démarrage au cas où les utilisateurs ne sauraient pas quoi rechercher.
J'utilise ceci avec MVC DropDownListFor car cela crée un contrôle de sélection pour nous.
J'ai trouvé cet article qui fait ça pour moi.
https://github.com/danielfarrell/bootstrap-combobox/pull/20
Tout ce que j'avais à faire était de retirer le nom du contrôle de sélection et le contrôle me permettait d'entrer du texte au format libre. Tout va bien jusqu'à présent.
Maintenant, j'utilise ceci en conjonction avec Knockoutjs. Je lie mes options et la valeur sélectionnée au contrôle de sélection, puis sur la ligne rendue de mon modèle, j'ai appelé (selector) .combobox () qui fait du contrôle de sélection une comobobox bootstrap et ajoute un contrôle d'entrée et masque le contrôle de sélection dans les scènes derrière.
Le problème maintenant, c'est lorsque j'essaie de faire publier les valeurs sur le serveur, car la valeur que je mets dans la zone de saisie n'est pas une option valide parmi les options que j'ai données pour sélectionner le contrôle, il la définit toujours sur la première option par défaut. C'est parce que j'ai défini la liaison de la valeur sélectionnée sur le contrôle de sélection et non sur la zone de saisie qui a été créée par bootstrap-combobox.js.
Ma question est de savoir comment obtenir la zone de saisie pour lier les données à la même propriété que celle à laquelle le contrôle de sélection était lié.
D'autres options ?? Faites-moi savoir si vous avez besoin de plus de précisions ou si vous avez des questions. Veuillez suggérer.
Merci.
la source
Réponses:
Jetez un œil à Select2 pour Bootstrap . Il devrait pouvoir faire tout ce dont vous avez besoin.
Une autre bonne option est Selectize.js . Cela semble un peu plus natif de Bootstrap.
la source
La liste de données HTML5 de base fonctionne-t-elle? C'est propre et vous n'avez pas à jouer avec le code tiers désordonné. Tutoriel W3SCHOOL
La documentation MDN est très éloquente et présente des exemples.
la source
datalist
est qu'il ne prend en charge aucun événement DOM. Ainsi, chaque fois que vous sélectionnez une valeur, vous devez sortir de la zone de texte correspondanteSelect2 pour le plugin natif Bootstrap 3
https://fk.github.io/select2-bootstrap-css/index.html
ce plugin utilise le plugin jquery select2
pépite
PM> Install-Package Select2-Bootstrap
la source
Fuel UX combobox a toutes les fonctionnalités que vous attendez.
la source
Puis-je suggérer http://www.jqueryscript.net/form/Twitter-Like-Mentions-Auto-Suggesting-Plugin-with-jQuery-Bootstrap-Suggest.html , fonctionne plus comme la suggestion de publication Twitter où il vous donne une liste d'utilisateurs ou de sujets basés sur des balises @ ou #,
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 le # en tout ce que vous voulez
la source
Bootstrap Tokenfield semble bon aussi: http://sliptree.github.io/bootstrap-tokenfield/
la source