我需要检查是否有 <li>
的 ID 与字符串 1001,1002,1003,
中给出的任何 ID 相匹配由 arrayList
输出在 for()
循环。
var wishArray = $.parseJSON($.cookie('wishlist_cookie'));
var arrayList = '';
var li = $('ul li');
var str = li.attr('id');
for (i = 0; i < wishArray['itemlist'].length; i++) {
arrayList += wishArray['itemlist'][i].wishlist_item_id + ",";
console.log(arrayList);
}
然后将Class添加到ALL <li>
其中 ID 等于 1001,1002,1003,
中的任意一个
if (arrayList.indexOf(str) != -1) {
if($('ul li').attr('id', idvalue)){
$(this).addClass('found');
}
}
我怎样才能让它检查所有<li>
ID然后申请.addClass('found')
致所有人 <li>
与 arrayList
输出的 ID 匹配?
最佳答案
为什么不简单地像这样呢?
这里我们构建了一个 jQuery CSS 选择器,它将与列出的 id 之一匹配每个 li 让 jQuery 完成剩下的工作。
var lisSelector = wishArray['itemlist'].map(function (item) {
return 'li[id="' + item.wishlist_item_id + '"]';
}).join(',');
$(lisSelector).addClass('found');
请注意,如果您不关心该元素是否为 <li>
无论是否,您都可以简单地使用 '#' + item.wishlist_item_id
生成一个选择器.
关于javascript - 检查字符串是否包含 ID,然后将Class 添加到所有匹配项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25307410/