将javascript数组与select:选项值进行比较

时间:2013-06-08 20:18:49

标签: javascript jquery arrays select option

我有一个带HTML的简单下拉选择菜单。单击某个选项时,其值将添加到名为exceptions的数组中。我想确保数组exceptions中不存在选项值,如果它确实取消了return的整个函数。除function loop()部分将数组exceptions的每个元素与点击的选项进行比较外,它都正常工作。

exceptions = new Array();

$(document).ready(function() {     

    $('select').click(function() {
       var clicked = $(this).val();
       loop(exceptions,clicked);
       exceptions.push( clicked );
    }); 

});

function loop(array,clicked) {
    for (var i=0;i<array.length;i++) { 
        if (array[i] == clicked) {return;}
    }
}

1 个答案:

答案 0 :(得分:0)

你可以这样做:

$('select').click(function() {
   var clicked = $(this).val();
   loop(exceptions, clicked) ? exceptions.push(clicked) : return;
});

function loop(array,clicked) {
    for (var i=0;i<array.length;i++) { 
        if (array[i] == clicked) {return false;}
    }
    return true;
}