填充selectize.js字段而不触发item_add事件

时间:2019-02-04 04:12:34

标签: javascript event-handling selectize.js

您如何selectize.addItem("value")而不触发item_add


我有一个标签字段,该字段取决于另一个选择。每当其他选择更改时,我需要自动填写标签,然后,每当用户添加或删除标签时,我都需要有一个侦听器运行代码。我无法弄清楚如何通过编程方式添加标签而不触发item_add事件,但是我不希望在用户触摸标签之前就触发它。

(有addItem(…, silent),但除非我弄错了,否则只会阻止它触发change事件。)

示例代码:

$('#input-tags').selectize({
  onItemAdd: function() {
    alert("This should only appear by user action");
  }
});
$tags = $('#input-tags')[0].selectize;
$tags.addItem("awesome");
$tags.addItem("neat");

JSFiddle

1 个答案:

答案 0 :(得分:0)

一种解决方案(也是我所知道的唯一一种解决方案)是在addItem之前删除事件侦听器,然后再添加回它们。但是,这似乎并不理想,特别是如果需要多次完成。