javascript - jquery select2 .on ("change", function(e) 重置选项

标签 javascript jquery jquery-select2

我正在使用 select2。

用法:如果值为 "COUNTRY",我想向 select2 添加一个 onchange 事件,否则我想删除 onchange 事件,如下所示:

var reportLevel = getReportLevel();

if (reportLevel != "COUNTRY") {
    $("#selected_countries").on("change", function(e) {
        prepareGlidModel(e);
    });
} else {
    $("#selected_countries").on("change", function(e) {
    });
}

问题:即使调用了 else block ,也无法删除 onchange 事件。 根据在 dropdown 中选择的 reportLevel 值调用事件。

最佳答案

尝试以下操作:

var reportLevel = getReportLevel(),
    // by default unbind/off change event
    $select = $("#selected_countries").off("change");

// and if country then bind it
if (reportLevel == "COUNTRY") {
   $select.on("change", function(e) {
       alert("you selected :" + $(this).val());
   });
}

这里的工作示例:http://jsfiddle.net/JB89B/1/

关于javascript - jquery select2 .on ("change", function(e) 重置选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17997241/

相关文章:

javascript - 使用 api 中用户输入返回的值

javascript - 如何为这种情况编写正则表达式?

javascript - 我怎样才能真正捕获 JavaScript 中花括号之间的内容?

javascript - 将 CSS 类添加到下拉列表或容器

javascript - 当没有编写 api 时,如何模拟 Angular2 中的 http observable

php - 如何从 textarea 字段中提取电子邮件 ID

jquery - 按向上和向下箭头选择 anchor 标记

javascript - 在 CKEditor 中添加单行换行符的按钮

javascript - 当值与显示值不同时,标签上的 Select2 错误

jquery - 将类添加到 select2 元素