即使选项没有更改,也会在Select2上触发事件

时间:2017-07-10 10:07:01

标签: javascript jquery jquery-select2

如果我从select2中选择一个选项,我想触发一个事件,但是我希望即使选项值没有改变也要触发它。 My select2 version is 3.4.1 Timestamp: Thu Jun 27 18:02:10 PDT 2013 我尝试了几种方法。比如。

首先我试过,

$('.myselect').on("change", function(e) { 
  // This function is not triggering if i selected the same option.
});

第二,我试过,

$('.myselect').on("select2-selecting", function(e) { 
  // This function triggers alright but it's giving me my previous selected 
  // value(i don't want to use timeout function)
});

3 个答案:

答案 0 :(得分:1)

根据 documentation ,提取当前所选值的正确方法是使用 e.val 属性。

所以你的代码必须看起来像

$('.myselect').on("select2-selecting", function(e) { 
  alert(e.val); // use this value;
});

答案 1 :(得分:1)

请为此找到下面的工作解决方案。

$('.myselect').on("select2-selecting", function(e) { 
  if(e.val){
    //Do your job
  }
});

答案 2 :(得分:0)

您可以使用select / unselect事件并检查条件

$('#myselect').on('select2:unselect', function (evt) {...});