清除时的JQuery UI组合框事件

时间:2013-10-20 10:32:13

标签: javascript jquery jquery-ui combobox

我正在使用JQuery UI组合框,而我正在寻找一种在所选值发生变化时执行某些操作的方法。我在StackOverflow中找到了这个解决方案:

$("#comboboxname").combobox({ 
    select: function (event, ui) { 
        // CODE
    } 
});

仅当我从列表中选择正确的值时才有效,但是当我从组合框中选择文本并将其删除时(即取消选择所有内容时),它不会触发。

还有另一种方法可以捕获此类事件吗? 谢谢

2 个答案:

答案 0 :(得分:1)

JQuery UI组合框只是普通html <select>控件的包装器。因此,选择回调只能在选择实际<option>时触发。

也许你可以尝试另一个像select2这样的组合框插件。它比JQuery UI组合框插件更灵活。

答案 1 :(得分:1)

select2提供拦截select2删除的事件:

$("#myCombo").select2({
    placeholder: "Select Something",
    allowClear: true,
});
$("#myCombo")
    .on("select2-selecting", function(e) {
        log("selecting val=" + e.val + " choice=" + JSON.stringify(e.choice));
    })
    .on("select2-removed",   function(e) {
        log("removed");
    });