如何在几个元素上使用.next()

时间:2012-03-16 21:13:26

标签: javascript jquery

这是当前的代码:

$("input[name='content_use']").click(function() {
    if ($(this).is(":checked")){
        $(this).closest('tr').next().show();
        $(this).closest('tr').next().next().show();
        $(this).closest('tr').next().next().next().show();
    } else{
        $(this).closest('tr').next().hide();
        $(this).closest('tr').next().next().hide();
        $(this).closest('tr').next().next().next().hide();
    }
}); 

:|

编辑:

正如您所看到的,我必须反复使用next()才能到达连续的行。我该如何编码更短?


解决方案nextUntil()感谢@pimvdb

1 个答案:

答案 0 :(得分:1)

使用.nextAll - “获取匹配元素集中每个元素的所有兄弟姐妹”

$("input[name='content_use']").click(function() {
    if (this.checked) {
        $(this).closest('tr').nextAll().show();
    } else {
        $(this).closest('tr').nextAll().hide();
    }
});