Javascript 是否在不触发更改的情况下加载带有选定选项的Select2?
有没有办法在不触发更改事件的情况下将select2加载到默认值 目前,我正在做:Javascript 是否在不触发更改的情况下加载带有选定选项的Select2?,javascript,jquery,select2,Javascript,Jquery,Select2,有没有办法在不触发更改事件的情况下将select2加载到默认值 目前,我正在做: $('#mylist').val(2).trigger("change"); 但这会造成一个延迟,用户首先会看到一个选项,然后它会更改,这非常麻烦。在HTML中设置一个默认值: <select id="myList"> <option id="foo">option 1</option> <option id="bar" selected="selected"
$('#mylist').val(2).trigger("change");
但这会造成一个延迟,用户首先会看到一个选项,然后它会更改,这非常麻烦。在HTML中设置一个默认值:
<select id="myList">
<option id="foo">option 1</option>
<option id="bar" selected="selected">option 2</option>
</select>
选择1
选择2
然后调用元素上的选择2
,对其进行初始化:
$('#myList')。选择2()代码>
或
$('#myList')。选择2(“val”,null)代码>如果要设置所选选项,通常可以执行以下操作:
$('#element').val('your_val').trigger('change');
但如果不想运行触发器,则必须先销毁它,然后在再次创建之前分配val,如下所示:
$('#element').select2('destroy');
$('#element').val('your_val').select2();
我知道我回答这个问题真的迟到了。我也面临同样的问题。但是做了一点研究,我发现了一个非常有效的解决方案
您可以使用下面的代码设置一个选项
$(“#mylist”).val(2.trigger('change.select2')代码>
此解决方案不会触发主更改事件,但会将选项设置为select2
组件
希望这对你有所帮助。它确实会引发变化event@Aditya这会触发select2中的更改事件,但不会触发使用.on(“更改”)设置的事件。因此,select2将处理更改,但自定义更改事件不会。确切地说,更改事件将非常特定于select2,而不是主更改事件。