jQuery:如果包含具有特定类的子<input />,则隐藏父级?

时间:2013-05-13 22:21:33

标签: jquery parent-child html-table

我正在使用jQuery Tablesorter Filters插件,我试图隐藏某些<td>。这就是我要做的事情:

- 如果<td>包含<input class="tablesorter-filter disabled">,请隐藏父<td>

<tr class="tablesorter-filter-row">
    <td>
        <input class="tablesorter-filter">
    </td>

    <td>
        <input class="tablesorter-filter disabled">
    </td>

    <td>
        <input class="tablesorter-filter">
    </td>
</tr>

<script>
    jQuery(function ($) {
        $(".tablesorter-filter-row td").filter(function(i) { return $(this).find("> input.disabled").length > 0 }).hide();
    });
</script>

这是我从另一个问题中剔除的jQuery,但是在这个实例中它没有隐藏父td。

2 个答案:

答案 0 :(得分:0)

您的代码看起来很好。确保在 DOM ready handler 中执行此操作,它应该可以正常工作。

$(function() {
   $(".tablesorter-filter-row td").filter(function() {
         return $('input', this).hasClass('disabled');
    }).hide();
});

<强> Check Fiddle

答案 1 :(得分:0)

$('.tablesorter-filter-row td').each(function(){
if($(this).children('input').hasClass('disabled').length == 0)
{
    $(this).children('input').hide();
}
});