您的位置:首页 > Web前端 > JQuery

jquery判断元素是否存在在数组中

2017-06-22 14:37 309 查看
varmyArray=newArray();
functioncheckRepeat(sel){
console.log("索引是:"+$.inArray(sel,myArray));//返回索引如果存在返回索引值,不存在返回-1
if($.inArray(sel,myArray)>=0){
varmsgModel={MsgType:"warning",msg:"选择项重复",result:false,msgTitle:"系统提示"};
BPM.ShowMsg(msgModel);
returnfalse;
}else{
myArray.push(sel);
for(i=0;i<myArray.length;i++){
console.log(myArray[i]);
}
console.log(myArray);
}
}
$.inArray()
方法类似于JavaScript的原生
.indexOf()
方法,没有找到匹配元素时它返回-1。如果数组第一个元素匹配
value
(参数),那么
$.inArray()
返回0。因为JavaScript将0视为false(即0==false,但是0!==false),要检查在
array
中是否存在
value
,你需要检查它是否不等于(或大于)-1。值之间的比较是严格比较(愚人码头注:即,===或!==比较)。下面这段代码返回 
-1
 (没有找到), 因为字符串数组中不可能找到一个数字:
1
$.inArray(5+5,["8","9","10",10+""]);

例子:

返回数组中指定元素的索引值。

12345678910111213141516171819202122232425
<!DOCTYPEhtml>
<html>
<head>
<style>
div{color:blue;}
span{color:red;}
</style>
<scriptsrc="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<div>"John"foundat<span></span></div>
<div>4foundat<span></span></div>
<div>"Karl"notfound,so<span></span></div>
<div>"Pete"isinthearray,butnotatorafterindex2,so<span></span></div>
<script>vararr=[4,"Pete",8,"John"];
var$spans=$("span");
$spans.eq(0).text(jQuery.inArray("John",arr));
$spans.eq(1).text(jQuery.inArray(4,arr));
$spans.eq(2).text(jQuery.inArray("Karl",arr));
$spans.eq(3).text(jQuery.inArray("Pete",arr,2));
</script>
</body>
</html>
http://www.css88.com/jqapi-1.9/jQuery.inArray/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jquery