更改事件之前选择的jquery

cou*_*011 0 jquery jquery-chosen

我想捕获所选择的jquery的更改前事件,因此如果选中的值不是必需的值,它就什么也不做,并返回到之前选择的选项.可能吗?

就像是

$('.chzn-select').chosen({
    'beforeChange': function(){
        //if option clicked is Option-3
        //do nothing

    }
});
Run Code Online (Sandbox Code Playgroud)

let*_*ves 6

借助数据 jQuery函数,change事件和params.selected参数,您可以轻松实现这一点.

$(".chzn-select").chosen().on("change", function (evt, params) {
    if (params.selected === "Portugal") {
        var previous = $(this).data("previous") || "";
        $(this).val(previous).trigger("chosen:updated");
    } else {
        $(this).data("previous", params.selected);
    }
});
Run Code Online (Sandbox Code Playgroud)

看这个工作演示