Jquery隐藏表行

时间:2010-05-22 17:32:03

标签: jquery

我隐藏了一堆文本框,它工作正常,问题是,文本框在表中,所以我还需要隐藏相应的标签。 结构是这样的

<tr>
<td>
Label
</td>
<td>
InputFile
</td>
</tr>

事实上,如果我隐藏具有文件输入的行,它会更容易,有人可以帮助

8 个答案:

答案 0 :(得分:62)

这可能对你有用......

$('.trhideclass1').hide();

<tr class="trhideclass1">
  <td>Label</td>
  <td>InputFile</td>
</tr>

答案 1 :(得分:20)

您只需要将DOM树遍历到最近的<tr>,就像这样......

$("#ID_OF_ELEMENT").parents("tr").hide();

jQuery API Reference

答案 2 :(得分:9)

这应该可以解决问题。

$(textInput).closest("tr").hide();

答案 3 :(得分:2)

$('inputFile').parent().parent().children('td > label').hide();

可以帮助你向上导航两个级别(到TD,TR)向下移动两个级别(TR中的所有TD和他们的LABEL标签),在那里应用hide()函数。

如果你想留在TR级别并隐藏它们:

$('inputFile').parent().parent().hide();

......就足够了。

您可以使用jquery选择器轻松浏览元素。

父母在此记录: http://api.jquery.com/parent/

这里记录了

hide: http://api.jquery.com/hide/

答案 4 :(得分:2)

<强> HTML

<tr><td><a href="" onclick=hideRow(event)></a></td></tr>

<强> jquery的

function hideRow(event){
  $(event.target || event.srcElement).parents('tr').hide();
}

答案 5 :(得分:1)

如果标签位于表格行中,您可以执行此操作以隐藏行:

('.InputFile').parent().Hide()

您可以根据需要优化选择器,然后获取包含该元素的表行。

JQuery选择器帮助:http://api.jquery.com/category/selectors/

编辑这是正确的方法。

    ('.InputFile').parents('tr').hide()

答案 6 :(得分:1)

使用parents('tr').hide()有效。但是,如果存在嵌入式表,则将隐藏所有父tr行。就我而言,整个表单都是隐藏的,因为有许多嵌入式表。

答案 7 :(得分:0)

我认为,如果您希望同时隐藏文本字段和标签,最好的选择是为每个分配一个类并隐藏它们,如下所示:

jQuery(".labelClass, .inputClass").hide();