创建项目(如果Selectize.js中尚不存在)选择框并且ajax更新新添加的项目

我在选择框中使用了Selectize.js ,我需要的是,如果一个项目不在选项列表中,我需要添加一个新项目。 添加新项目时,我希望进行ajax调用以将新添加的项目更新到我的数据库。

在他们的文档中 ,它说我们可以使用“创建”来进行选择以添加项目。

create – 允许用户创建不在选项列表中的新项目。 此选项可以是以下任何选项:“true”(默认行为),“false”(禁用)或接受两个参数的函数:“input”和“callback”。 应使用该选项的最终数据调用回调。

但我无法理解如何在这里使用回电。 有人可以帮忙吗?

以下是我的内容示例,值是db中项目的ID。 我想将新项目添加到db并返回值为db的id并填充并在选择框中选中。

 Apple Orange Mango Grape   $(function(){ $('#fruits').selectize({ create:function (input, callback){ } }); });  

实际上,您必须返回一个对象,其属性与labelField和valueField选项的名称相匹配:

  

如果您需要执行远程操作,您可以像这样编写代码:

  

你必须调用回调,传递你的值:

 $('#fruits').selectize({ create:function (input, callback){ callback({ value: 123, // probably your ID created or something text: input }); } }); 
 Thanks a lot, @Corgalore. Its working for me like $(function(){ $('#desig').selectize({ create:function (input, callback){ $.ajax({ url: "url(null, array('controller' => 'employee-detail', 'action' => 'add-new-desig-ajax'));?>", type: 'POST', data:{'designation':input}, success: function (result) { if (result) { // console.log('sdfasf',result); callback({ value: result.id, text: input }); } } }); } }); });