我目前正在使用jQuery,并希望在迭代所有“已选中”复选框并删除父表行的类(称为“new_message”)时提供一些帮助。
我有一个基本的概念,但我无法完全了解整个事情。
以下是我目前正在使用的内容:
$("#unread_button").click(function (event) {
event.preventDefault;
$(":checkbox:checked").each(
function()
{
if (this.checked)
{
var divs = $.makeArray($(this).parents("tr").attr("id"));
}
$(divs).each(
function(int)
{
$(this).removeClass("new_message");
}
);
});
});
最终,这也将更新数据库,因此,如果可以定制代码以适应两者,那就太棒了。
非常感谢任何指导!
答案 0 :(得分:6)
我认为这会奏效:
$('input:checkbox:checked').parents('tr').removeClass('new_message');
或者,如果它只是您想要匹配的直接TR父级,那么:
$('input:checkbox:checked').closest('tr').removeClass('new_message');
jQuery为你完成所有循环,所以你必须拥有所有的每个()es。
使用':checked'选择器后,您必须重新检查项目是否已选中。这应该将您的选择器结果限制为仅检查项目。
答案 1 :(得分:4)
$("input:checked").each(function() {
$(this).removeClass("new_message");
}
会从复选框中删除相关的类,所以
$(this).parent....
应该根据您的HTML看起来像