1

我有以下html:

<option value="55">Clothing - Mens</option>
<option value="56">Clothing - Womens</option>
<option value="67">Film Music & Books</option>
<option value="69">Food & Drink</option>

我想在选择“服装 - 男装”或“服装 - 女装”时显示一个 div,所以我正在使用,效果很好:

$(document).ready(
function(){
    $('#category').change(
        function(){
            if ($(this).val()) {
                $('input:submit').attr('disabled',false);

                if (($(this).val() == '55') || ($(this).val() == '56')) {
                    $('#fashion').show();
                    } else { $('#fashion').hide(); }

            } else { 
                $('input:submit').attr('disabled',true); 
            }
        });

});

但是有没有办法缩短它?我已经尝试了以下两种方法,但都没有工作

if ($(this).val() == ('55','56')) { 

if ($(this).val() == ('55' || '56')) { 

在上述两种情况下,选项值 56 有效,但 55 无效。

4

2 回答 2

2

你可以使用jquery的inArray..

http://api.jquery.com/jQuery.inArray/

if ($.inArray($(this).val(),["55","56"]) != -1) {

工作示例.. http://jsfiddle.net/FYNKc/1/

于 2012-10-06T09:23:23.117 回答
0

您可以直接联系我们this.value,而不是$(this).val();

if ($.inArray(this.value, ['55','56']) != -1) {
于 2012-10-06T09:26:47.967 回答