如何刷新选择选项?

时间:2017-12-18 10:50:55

标签: javascript jquery selectize.js

我有一个ajax调用,每次成功都会更改一个select元素选项,我遍历数据并将其放入一个字符串

$.each(value, function(i, trx){
    trxListOptions += "<option value="+trx+">";
    trxListOptions += trx;
    trxListOptions += "</option>"
}

然后我将html字符串附加到选择元素

$("#selectizeTrx").append(trxListOptions);

然后我初始化选择

$("selectizeTrx").selectize();

这是有效的,但只是第一次,在第二次ajax调用后更改每个选项,选择选项不会显示新选项,它仍然显示旧选项。

如何刷新/重新加载选择选项,使其适应原始选择元素??

2 个答案:

答案 0 :(得分:0)

在添加和初始化

之前尝试此操作
 $('#selectizeTrx').selectize()[0].selectize.destroy();

Fiddle link

答案 1 :(得分:0)

$.each($('select.#selectizeTrx'),function (i, el) {
    el.selectize.destroy();//destroy your selectize
})
var allOptions =  $('select.#selectizeTrx').html();//get current select options.
allOptions += newOptions; //combine your new options and current options
$('select.#selectizeTrx').html(allOptions);//set all options
$('select.#selectizeTrx').selectize({

});//and selectize.

注意:destroy方法可以删除选择选项。因为获取当前选项并合并新选项。