Selectize.js手动添加一些项目

我想在用户点击按钮后为选择的输入添加一些项目。 输入数据通过Ajax加载。 当我调用addItem(value)时,没有任何事情发生。 但是,如果我尝试在输入中键入一些字符串,它会加载数据,然后addItem(value)将起作用。

https://github.com/brianreavis/selectize.js/blob/master/docs/api.md

此插件不会尝试从服务器加载项元数据。 您需要首先使用addOption()方法添加选项。 之后,您可以使用addItem()

 v.selectize.addOption({value:13,text:'foo'}); //option can be created manually or loaded using Ajax v.selectize.addItem(13); 

您可以添加以下选项:

 var $select = $(document.getElementById('mySelect')).selectize(options); var selectize = $select[0].selectize; selectize.addOption({value: 1, text: 'whatever'}); selectize.refreshOptions(); 

这仅添加选项作为可能的选择。 现在,您可以使用addItem将新选项添加​​到列表中:

 selectize.addItem(1); 

这不需要刷新function。 如果立即添加新选项,则无需使用“refreshOptions”。

试试这个。

  $('.select-ajax-city').each(function() { if (this.selectize) { for(x=0; x < 10; ++x){ this.selectize.addOption({value:x, text: x}); } } }); 

Ty这个

 var $select = $(document.getElementById('Your-element-id')); var selectize = $select[0].selectize; selectize.addOption({value: '2', text: 'test'}); selectize.addItem('2');