首页 文章

selectize.js调用href添加新选项

提问于
浏览
0

selectize的文档已经解释了如何使用create:function(input,callback)将新项添加到数据库中 .

在我的例子中,selectbox的基本模型不仅包含选项名称,还包含其他数据 .

P.e . :我有一个国家选择框 . 选项由模型“Countries”填充,其中包含“country_name”,“top_level”,“currency” . 选择框仅显示“country_name” . 如果用户想要添加新的国家/地区,我想打开一个引导程序模式,让用户添加新的国家/地区数据,保存后我想使用refreshOptions()刷新选择框 .

我试图改变第741行中的selectize.js

'option_create': function(data, escape) {
    return '<div class="create">Add <strong>' + escape(data.input) + </strong>&hellip;</div>';

'option_create': function(data, escape) {
    return '<a data-toggle="modal" data-keyboard="false" data-backdrop="static" data-target="#modal" href="... some link ...">New country</a>';

在seletbox中写入一个不存在的国家后,我可以看到该链接,但是当我点击它时没有任何反应 .

我怎样才能解决这个问题?我已经接近放弃了:-)

用于删除选项的Javascript:

<script type="text/javascript">
    $(".chosen-search-94-departID").selectize({
      create: true,
      sortField: {field: 'text'},
      onOptionAdd: function (value, $item) { 
          var link='... link ...' + value;
          load_modal_content (link, '... csrf ...');
          $('#modal').modal('show');
          $item.selectize.removeOption(value);
      },
  });

1 回答

  • 0

    可以更清洁/更简单地使用onItemAdd(请参阅Usage page)来定义添加新项目时的行为 . 我想,无需改变selectize.js .

相关问题