我有这个代码循环遍历HTML结构并根据其数据属性构建一个数组。我想在foreach
循环中执行条件语句,并想检查我的count
变量是否在数组中。我查看了inArray()
,但我不确定它是否适用于associative arrays
?
这是HTML
<div class="dfp" data-adposition="<?php echo $dfpPos; ?>" data-dfpcode='<?php echo $dfpCode; ?>'>
</div>
<div class="dfp" data-adposition="<?php echo $dfpHalfPos; ?>" data-dfpcode='<?php echo $dfpHalfCode; ?>'>
</div>
这是构建数组的JS。
var dfpObj = { "adverts" : [] };
$(".dfp").each(function(){ // PROCESS DFPS
var code = $(this).data("dfpcode");
var position = $(this).data("adposition");
var dfp = {
"code": code,
"position": position
}
dfpObj.adverts.push(dfp);
});
我的IF声明。
if($.inArray(count, dfpObj.adverts) !== -1) {
var dfp = $('.dfp[data-adposition=' + count + ']');
var dfpcode = $(dfp).data("dfpcode");
var dfppos = $(dfp).data("adposition");
myfunction(dfpcode, dfppos);
}
// count is within a foreach loop so at the end of the loop is $count++
答案 0 :(得分:0)
您可以使用以下内容。
$.grep(dfpObj.adverts, function(obj) { return obj.code == "122"; })
这将为您提供该对象,或者为您提供空数组。