jquery用条件选择所有子类

时间:2016-03-22 20:23:22

标签: javascript jquery

我想找到.post-comment-replies嵌套在其中的所有'.post-comment-reply'(不是第一级)。

使用下面的代码,我也会得到那些没有.post-comment-replies嵌套在其中的.post-comment-reply

$(document).on('click', '.open-all-post-comments', function (event) {
  var post_id = $(this).data('pid');
  var all_replies = $('#post_' + post_id).find('.post-comment-replies');
  all_replies.show();
  $(this).closest('.open-all-post-comments-row').hide();
});

1 个答案:

答案 0 :(得分:2)

您可以使用:has()选择器

执行此操作
var all_replies = $('#post_' + post_id)
                   .find('.post-comment-replies:has(.post-comment-reply)');

:has()选择器可以帮助我们获取具有一个或多个后代.post-comment-replies的{​​{1}}。

如果你想让直接的孩子逃离选择器,你可以使用,

.post-comment-reply