HTML
<span class="unread" id="@item.TaskId" data-id="read"> @item.Title</span><br />
jquery的
$("#notificationsBody > span").find("[data-id='read']").attr('class', 'read');
如何在此代码中找到所有data-id并将其类设置为read?以上行无效
答案 0 :(得分:1)
由于它是data-id
的范围,因此您无法使用.find()
,因为它会搜索后代。改为使用.filter()
,或者更好,将其放在选择器中。
您可能还想使用.addClass()
代替.attr()
$("#notificationsBody > span[data-id='read']").addClass('read');
如果您必须删除课程unread
,则可以链接.removeClass()
$("#notificationsBody > span[data-id='read']")
.addClass('read');
.removeClass('unread');
答案 1 :(得分:0)
find()贯穿于孩子们的深处。但是,孩子()经历了第一级孩子。
$("#notificationsBody").chlidren("span[data-id='read']").addClass('read').removeClass('unread');
答案 2 :(得分:0)
以最佳方式
var divisors = Enumerable.Range(1, 20);
if(divisors.All(div => i % div == 0))
{
//do someting
}
答案 3 :(得分:0)
我试着运行你的代码并且他的工作。
$('.activate').click(function() {
$("#notificationsBody > span").find("[data-id='read']").attr('class', 'read');
});
&#13;
li {
display:none;
}
.read {
display:block;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="notificationsBody">
<span>
<ul>
<li data-id="read">a</li>
<li data-id="read">b</li>
</ul>
</span>
</div>
<button class="activate">Add read class</button>
&#13;