select2
似乎正是我所需要的。但是,根据他们的文档和this example that I found,我无法弄清楚如何在现有选项中使用组合框。如果您查看示例(我通过向choices
数组添加一些选项来更新此示例),您将看到select上的throbber只是旋转并且根本找不到任何现有选项。但是,它仍然允许您输入一个尚未存在的选项,这也是我需要的选项。
我需要做些什么来更新chosen
的使用情况,以便您获得所有常规功能,例如显示选项和预先输入/自动完成,还允许用户添加尚不存在的选项?
答案 0 :(得分:2)
这很简单,您需要记住选择接受配对数据: id(值)和文本(标签)。您必须提供此类数据。所以我修改了choices
变量。
此外,我还做了一些其他的改进,比如deaccented比较,在开始时提出新的选择,最重要的是:完全匹配的术语不会创建新的重复选择。
答案 1 :(得分:1)
我一直有同样的问题,但是你的帖子帮助我解决了问题。您必须将现有选项放入"选项"变量为JSON。所以看起来应该是这样的:
var choices = [
{ id: 1, text: "foo" },
{ id: 2, text: "bar" },
{ id: 3, text: "Baz" }
];
您还需要为每个ID添加一个ID,以便选择器为每个选择分配一个值。
我尝试使用ajax调用从数据库中获取选项,因此我还有一些工作要做。但是,如果您使用静态选项,希望这会有所帮助。