使用jQuery $ .inArray
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用jQuery $ .inArray相关的知识,希望对你有一定的参考价值。
我需要将动态创建的变量与静态值数组进行比较。由于变量是动态生成的,因此我无法执行类似的操作
if ($.inArray('example', myArray) != -1)
{
// found it
}
到目前为止,我有这是>
//This runs for each link in the .lc_Cell element $('.lc_Cell > p > a').attr('href', function(i, href) { //Grab the link and split it into chunks at each occurence of '&' var arr = href.split('&'); console.log(arr); //Keep a portion of the link as a var, this is always a 4 digit number //For the purposes of this question lets say this value is going to be 7473 var trId = arr[1].slice(-4); console.log(trId); //Populating my array of desired numbers to search against var validTR = [7473, 7474, 7475, 7476, 7477, 7478, 7479, 7480, 7481, 7482, 7483, 7484, 7485, 7486, 7487, 7488, 7489, 7490, 7491, 7492, 7493, 7494, 7495, 7351]; console.log(validTR); //Compare the sliced value from the link against the array var testingID = $.inArray(trId, validTR) console.log(testingID); }
我的控制台中的testingID始终返回-1,即使trId中的值是数组中包含的值。
最终,我需要能够为testingID获得一个正值,这样我才能编写if语句,之后再做某事。
我需要将动态创建的变量与静态值数组进行比较。由于该变量是动态生成的,因此我无法执行以下操作:if($ .inArray('example',myArray)!= -1){// ...
答案
根据docs:
另一答案
validTR
数组仅包含数字。
另一答案
它起作用了,您得到-1,因为它不包含它,请检查:
以上是关于使用jQuery $ .inArray的主要内容,如果未能解决你的问题,请参考以下文章
$.each 和 jQuery.inArray 函数组合的奇怪输出
如何使用 jQuery.inArray 方法选择一组唯一的随机数(不重复)?