select2 'change' 事件第一次不会触发

Иго*_*кий 2 javascript jquery jquery-select2

我的页面上有 Select2 Javascript 小部件。

$('#order_address_select').select2({
  placeholder: "Select adress",
  ajax: {
    url: '<?=Yii::app()->getBaseUrl(true)?>/order/getplacemarklist',
    dataType: 'json',
  },
  tags: true,
});
Run Code Online (Sandbox Code Playgroud)

当我输入一些文本时,如果在数据库中找不到它并且没有通过ajax加载,我无论如何都可以选择它,原因属性tags设置为true. 然后我有以下代码

 $('#order_address_select').change(function () {
   alert($("#order_address_select option[data-select2-tag='true']").val());
 });
Run Code Online (Sandbox Code Playgroud)

问题是当我输入文本并将其选择为标签时,事件不会第一次触发。但是,当我再次输入文本并选择它时,代码会提醒先前选择的选项的值。例如:我输入“aaa”,选择它,没有任何反应,然后我输入“bbb”,选择它,并收到“aaa”警报

Иго*_*кий 6

所以,如果有人感兴趣,我在 select2 github 存储库上找到了解决方案,您只需<option></option>在您的<select>. 然后它就会正常工作