如何在 'onDropdownOpen' 事件上重新启动选择选项

How to reinitiate selectize options on 'onDropdownOpen' event

美好的一天,

我试图在用户打开下拉菜单时先清除我的选择下拉菜单中的选项,然后再添加新的选项集。

这是我的代码:

var selectx = $('#location_package').selectize({
    onDropdownOpen  : function(){
    console.log('opened');
    selectx[0].selectize().clearOptions();
    }
});

但我总是得到这个错误 Uncaught TypeError: selectx[0].selectize is not a function 但基于前面的例子.. link 这就是他调用函数的方式。我究竟做错了什么?谢谢

selectx[0] 引用 selectize 对象,你应该在函数外定义它:

   

$('#location_package').selectize({
  onDropdownOpen: callback
});

 var selectx = $('#location_package').selectize();

function callback() {
  console.log('opened');
  var select = selectx[0].selectize;
  select.clearOptions();
}