Jquery如何知道数据属性上是否存在值

Jquery how to know if value exists on data attribute or not?

本文关键字:是否 存在 数据属性 何知道 Jquery      更新时间:2023-09-26


我有一个像这样的htmldiv。

<div id="myDiv" data-numbers="1 4 5 3 9 88 57 "></div>

在div的data-numbers属性上,有用空格分隔的随机数。
现在我想在data-number上找到一个值,或者不使用jQuery
例如,1应返回true,
2应返回false,因为2不在数据编号中,
4应返回true而7应返回false。

请帮我找到解决方案

PS。我想避免循环
提前谢谢

这将适用于

var numbers = $('#myDiv').data('numbers').split(' ');
function contains(number){
    return numbers.indexOf(number.toString()) > -1;
}
alert(contains(1));  //true
alert(contains(2));  //false
alert(contains(7));  //false
alert(contains(57)); //true

DEMO

类似的东西?

function checkIfNumberExists($el, number){
    var numbers = $el.data('numbers').split(' ');
    return !!~ numbers.indexOf(number.toString());
}
console.log(checkIfNumberExists($('#myDiv'), 1)); // true
console.log(checkIfNumberExists($('#myDiv'), 2)); // false

http://jsfiddle.net/re5434ck/

编辑-这应该可以做到——
$(document).ready(function(){
var all=$("#myDiv").attr('data-numbers');
console.dir(all);
var mm= all.toString();
var kk= mm.split(' ');
$.each(kk,function(key, val){
if(val == '2'){
console.log('2 is found');
}
})
})