如何检查字符串是否为.inarray

时间:2010-12-29 16:11:25

标签: javascript jquery arrays

如何检查数组中是否包含字符串?以下是我将阵列放在一起的方法......

 // get the select
 var $dd = $('#product-variants');

 if ($dd.length > 0) { // make sure we found the select we were looking for

 // save the selected value
 var selectedVal = $dd.val();

 // get the options and loop through them
 var $options = $('option', $dd);
 var arrVals = [];
 $options.each(function(){
     // push each option value and text into an array
     arrVals.push({
         val: $(this).val(),
         text: $(this).text()
     });
 });
};

我想检查数据中是否包含“Kelly Green”,如果它是我想要的话。显示李

$("#select-by-color-list li#kelly-green").show();

3 个答案:

答案 0 :(得分:4)

其他答案是正确的,只要在这里使用$.inArray()然而使用已关闭,应该是:

if($.inArray('Kelly Green', arrVals) != -1) {
  $("#select-by-color-list li#kelly-green").show();
}

$.inArray()会返回数组中的位置(如果是第一个,则可能是0 ...所以它在那里,但if()将是假)。要检查它是否存在,请使用!= -1,如果元素,它将返回。

答案 1 :(得分:1)

您可以使用jQuery的内置.inArray()方法:

if($.inArray('Kelly Green', arrVals) != -1) {
    $("#select-by-color-list li#kelly-green").show();
}

答案 2 :(得分:1)

试试这个:

console.log($.inArray('Kelly Green', arrVals);

if($.inArray('Kelly Green', arrVals)
{
  $("#select-by-color-list li#kelly-green").show();
}

可能的欺骗: Need help regarding jQuery $.inArray()