我试图找到所有具有“类似注释”类的div,其中也有“data-id”属性等于118603,1234,1234,118601,118597并且如果某些div包含这些数据值中的一个,则删除那个数据属性。
到目前为止,我创建了这个,但它目前无法正常工作。
remove_comments = 118603,1234,1234,118601,118597;
$('.comment-like').find('[data-id="' + remove_comments + '"]').removeAttr('data-id');
答案 0 :(得分:1)
您可以动态创建查询字符串以捕获您要查找的所有div。查询字符串如下所示:
.comment-like[data-id="118603"], .comment-like[data-id="1234"], etc...
var ids = [118603, 1234, 1234, 118601, 118597];
var queryString = ids
.map(function(id) {
return '.comment-like[data-id="' + id + '"]';
})
.join(', ');
$(queryString).each(function(i, el) {
$(el).removeAttr('data-id');
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="comment-like" data-id="118603"></div>
<div class="comment-like" data-id="1234"></div>
<div class="comment-like" data-id="0"></div>
&#13;
答案 1 :(得分:0)
简单的解决方案就是循环使用你的ID
remove_comments = 118603,1234,1234,118601,118597;
rc = remove_comments.split(",");
for (var i = 0; i < rc.length; i++) {
$('.comment-like').find('[data-id="' + rc[i] + '"]').removeAttr('data-id');
}
答案 2 :(得分:0)
如果您在Chrome中打开开发者控制台并将其打印在:
remove_comments = 118603,1234,1234,118601,118597;
remove_comments
你可以看到实际发生的事情。
一种应该工作的方法是将它放在一个数组中,然后循环它:
var remove_comments = [118603,1234,1234,118601,118597];
for (var i = 0; i < remove_comments.length; i++) {
$('.comment-like').find('[data-id="' + remove_comments[i] + '"]').removeAttr('data-id');
}