jQuery监听下拉菜单强制特定的选择元素值

时间:2013-10-24 15:48:11

标签: jquery drop-down-menu

我有一些jQuery,用于在页面上的任何<select>元素发生更改时触发。如果该元素的值为“Other”,则从与select元素同名的div中删除一个类。

这是我的代码:

$('select').change(function(){
    var x = $(this).attr('name');
    if($(this).val('Other')) {
         $('div[name="' + x + '"]').removeClass('hidden');
    } else {
         $('div[name="' + x + '"]').addClass('hidden');
    }
});

它适用于页面加载时div被隐藏,如果选择“Other”,则显示div。

然而:

下拉列表中的任何选择都会导致选择“其他”(以及代码触发)

因此,即使在病房后尝试更改,也不可能选择“其他”以外的任何其他标记。

谁能看到我哪里出错了?提前致谢

1 个答案:

答案 0 :(得分:1)

更改

if($(this).val('Other'))
// this will set value to Other so if condition will always be true no matter what ever you select.

if($(this).val() == 'Other') 
// this will check if value is equal to Other

或更好

if(this.value == 'Other')