Select2 重新初始化不起作用

问题描述 投票:0回答:1

我有一个选择框,它依赖于另一个选择框。我正在使用 AJAX 更改第二个(从属)选择框上的选项。另外,我在两个选择框上使用 select2 插件,例如:

$(document).ready(function() {
    $('#mySelect2').select2({
        // options
        }
    });
});

我的问题是,刷新第二个选择框后,select2 就从该选择框中消失,并像普通选择框一样向我显示。在这里的某个地方,我看到我可以使用 destroy 并“重新初始化”选择。但在 mySelect1.onChange 事件中,当我使用时:

$('#mySelect2').select2("destroy");
$('#mySelect2').select2({
        // same options
});

看起来该选择框已被销毁但未再次初始化。因为再次刷新后,我的控制台显示:

The select2('destroy') method was called on an element that is not using Select2.

感谢您的回答,我是新手。

javascript jquery drop-down-menu jquery-select2
1个回答
0
投票

尽量不要破坏 select2 元素,加载新的

data
link,然后加载
.trigger('change')
link。例如:

// new data arrived...
var new_data = [...]

$('#mySelect2').select2({
    // update data
    data: new_data
});
$('#mySelect2').trigger("change");
© www.soinside.com 2019 - 2024. All rights reserved.