javascript - 选择下拉列表时触发的 JQuery 事件——但值未更改

标签 javascript jquery

我有一个下拉菜单,我想将一个 JQuery 事件连接到该菜单,如果有人单击它,然后选择已选择的相同选项,则会触发该菜单。

我已经使用“更改”事件运行了所有内容,但在某些情况下,用户单击下拉列表并重新选择相同选项是有效的。如果发生这种情况,我需要触发我的事件处理程序。

我该怎么做?

最佳答案

试试下面的方法,

使用.click

$(function () {
    var cc = 0;
    $('select').click(function () {        
        cc++;
        if (cc == 2) {
            $(this).change();
            cc = 0;
        }         
    }).change (function () {
        $('#result').append('Changed triggered ');
        cc = -1;
    });     
});

演示: http://jsfiddle.net/skram/NAHXP/2/

或者使用.focus.blur

$(function () {
    var ddVal = '';
    $('select').focus(function () {
        ddVal = $(this).val();
    }).blur(function () {
        if (ddVal == $(this).val()) {
            $(this).change();
        }
    }).change (function () {
        $('#result').append('Changed triggered ');
    });       
});

演示: http://jsfiddle.net/skram/NAHXP/

关于javascript - 选择下拉列表时触发的 JQuery 事件——但值未更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11002421/

相关文章:

javascript - <embed> 带密码的源更改器

javascript - 在更改事件中更改 Select2 选项的字体颜色

javascript - jQuery UI 小部件 - 将 jQuery 对象存储在实例变量中

jquery - window.onload 在 Firefox 中的 jQuery document.ready 之前触发

javascript - 有免费的可编辑客户端网格吗?

javascript - 将 jQueryFileUpload 库与 require.js 一起使用

javascript - Firefox 插件 - 如何发出 http 请求

javascript用于根据php变量更改图像

javascript - 如何从子窗口调用父的父javascript函数

javascript - Angular 2 : issue with rest api