2014-02-16 52 views
1

select2似乎几乎正是我所需要的。但是,根据他们的文档和this example that I found,我无法弄清楚如何使用带有现有选项的组合框。如果你看看这个例子(我通过在choices数组中添加了一些选项来更新这个例子),你会发现select上的跳动只是旋转,并且根本找不到任何现有的选项。但是,它仍然允许您输入一个尚未存在的选项,这也是我需要的选项。select2 combobox与现有选项

我需要做些什么来更新我的chosen的使用情况,以便获得所有常规功能,如显示选项和键入/自动完成,还允许用户添加尚不存在的选项?

回答

1

我一直有同样的问题,但你的文章帮我弄明白了。您必须将现有选项作为JSON放入“选择”变量中。因此,它应该是这样的:

var choices = [ 
{ id: 1, text: "foo" }, 
{ id: 2, text: "bar" }, 
{ id: 3, text: "Baz" } 
]; 

您还需要一个ID添加到每一个使得选择将值分配给每个选择。

我想使用ajax调用来从数据库中获得我的选项,所以我有更多的工作要做。但是如果你使用静态选项,希望这会有所帮助。

2

这很简单,你需要记住,选择不接受对数据ID(值)文本(标签)。你必须提供这样的数据。所以我修改了choices变量。

另外我做了一些其他的改进,如取消比较,在开始时预先添加新的选项,最重要的是:完全匹配的术语不会创建新的重复选择。

请看这里:http://jsfiddle.net/seck4/116/