我在做什麼:當模式彈出窗口打開時,動態地將選項添加到選擇框。並等待on change
觸發器作出響應。Select2在第一個選項的更改/選擇時不觸發
觀察:它彈出所有選項,但首先彈出警報框。 以下是代碼。
$("#query_product").on("change", function(e){
alert(1)
});
$("#add_condition_modal").on("shown.bs.modal", function() {
options = ['<option>one</option>','<option>two</option>','<option>three</option>']
$('#query_product').find('option').remove()
$('#query_product').append(options);
});
<select id="query_product" name="query_product" required></select>
另一個觀察:當我預先填入HTML選擇框相同的選項,然後選擇第一個選項或任何選項,我看到了警報彈出。 現在我很困惑。
我嘗試使用事件委託來動態添加元素。
$(document).on("change","#query_product", function() {
似乎沒有任何工作。任何幫助將不勝感激。 TIA
謝謝,這個工程。但是,你能解釋爲什麼需要設置空val來選擇框。我真的很想知道 –
這是爲了重置選擇框的值,以便可以觸發更改事件。 –