使用jQuery查看下拉菜单选择是否已更改

参见英文答案 > detecting any selected dropdown value with jquery?2个
我想看看是否已选择或取消选择特定的下拉菜单项.

我试过了

jQuery("#dropdownID option[value='selectionKey']").change(function() {
    if (jQuery("#dropdownID option[value='selectionKey']").attr('selected','selected'))
        DoSomething();
    else DoSomethingElse();
});

jQuery("#dropdownID").change(function() {
    if (jQuery("#dropdownID option[value='selectionKey']").attr('selected','selected'))
        DoSomething();
    else DoSomethingElse();
});

但是,通过更改下拉菜单中的选择不会触发任何阻止.也就是说,它永远不会到达if语句.

解决方法

您可以在小于1.7的jquery版本中尝试这样的事情:
$("#dropdownID").live('change',function() {
    if ($(this).val() == 'selectionKey'){
        DoSomething();
    } else {
        DoSomethingElse();
    }
});

您可以在大于1.7的jquery版本中尝试这样的事情:

$("#dropdownID").on('change',function() {
    if ($(this).val() == 'selectionKey'){
        DoSomething();
    } else {
        DoSomethingElse();
    }
});

相关文章

jQuery插件的种类 1、封装对象方法 这种插件是将对象方法封装起来,用于对通过选择器获取的jQuery对象进...
扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间。 入门 编写一个jQuery插件开始于给...
最近项目中需要实现3D图片层叠旋转木马切换的效果,于是用到了jquery.roundabout.js。 兼容性如图: ht...
一、什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异...
AMD 模块 AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一...