Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何检查字符串是否为.inarray_Javascript_Jquery_Arrays - Fatal编程技术网

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

Javascript 如何检查字符串是否为.inarray,javascript,jquery,arrays,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

如何检查数组中是否包含字符串?下面是我如何组合阵列的

 // 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,如果是,我想。显示一个li

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

您可以使用jQuery的内置方法:


您可以使用jQuery的内置方法:

试试这个:

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

if($.inArray('Kelly Green', arrVals)
{
  $("#select-by-color-list li#kelly-green").show();
}
可能的重复: 试试这个:

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

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

其他答案在此处使用时是正确的,但是用法是关闭的,应该是:

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

返回数组中的位置,如果它是第一个,那么它可能是0…所以它在那里,但是如果是false。要检查它是否存在,请使用!=-1,如果找不到元素,它将返回该值。

其他答案在此处使用时是正确的,但是用法是关闭的,它应该是:

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

返回数组中的位置,如果它是第一个,那么它可能是0…所以它在那里,但是如果是false。要检查它是否存在,请使用!=-1,如果找不到元素,它将返回该值。

您的参数搞错了,它是.inarayValue,array。@Noah和Tatu,不错!我在想这件事太难了!很好!非常感谢你把参数搞错了,它是。inarayValue,数组。@Noah和Tatu,不错的一个!我在想这件事太难了!很好!非常感谢您小心使用,检查不正确,应该是$INARAray'Kelly Green',arrVals!=-1.{,0是一个有效的结果,如果元素是数组中的第一个元素,您将得到0,-1是您应该检查的内容。@Nick Craver,您是对的,我已经修复了答案。我自然地认为jQuery不会复制JS自己的白痴,而只会返回一个指示值的进位的布尔值。:小心使用这个,check不正确,如果$.inArray'Kelly Green',arrVals!=-1,则应为{,0是一个有效的结果,如果元素是数组中的第一个元素,您将得到0,-1是您应该检查的内容。@Nick Craver,您是对的,我已经修复了答案。我自然地认为jQuery不会重复JS自己的愚蠢行为,而只会返回一个指示值的进位的布尔值: