我想根据表数据id隐藏表中的一些表行,我只找到了根据表数据值隐藏表行的方法,但是(在我的情况下)不是溶液
例如,假设这是我的表:
<table id='table1' border="1">
<tr id='hideme'>
<td id='letmehide'>row 1, cell 1</td>
<td id='letmehide'>row 1, cell 2</td>
</tr>
<tr id='donthideme'>
<td id='dontletmehide'>row 2, cell 1</td>
<td id='dontletmehide'>row 2, cell 2</td>
</tr>
</table>
我的javascript / JQuery应该是什么样的? 小提琴:http://jsfiddle.net/twyqS/
答案 0 :(得分:5)
请注意,您的网页上的ID必须是唯一的,因此我建议您使用css类而不是ID
<强> HTML 强>
<table id='table1' border="1">
<tr class='hideme'>
<td class='letmehide'>row 1, cell 1</td>
<td class='letmehide'>row 1, cell 2</td>
</tr>
<tr class='donthideme'>
<td class='dontletmehide'>row 2, cell 1</td>
<td class='dontletmehide'>row 2, cell 2</td>
</tr>
</table>
<强> JS 强>
$('#table1 .hideme').hide();
如果需要,这将允许您隐藏多行。
答案 1 :(得分:2)
首先,您正在使用jQuery,使用它来附加您的事件处理程序。它产生了更多的语义HTML,并且更好地分离了关注点。
关于您的问题,您应该使用:first
选择器获取第一个tr
元素,然后使用hide()
函数:
$('#table1 tr:first').hide();
或者,您可以使用id
的{{1}},因为它是唯一的:
tr
我建议您熟悉jQuery API,特别是selectors available。
答案 2 :(得分:1)
试试这个......
$(document).ready(function(){
$('button').on('click', function(){
$('#table1 tr:first').hide();
});
});
看到这个......
<强> DEMO 强>
答案 3 :(得分:0)
试试这个:
$('#table1 tr[id="hideme"]').hide();//in table1 hide tr that are with attribute id="hideme"
答案 4 :(得分:0)
ID of an element should be unique,因此请在元素中使用class属性而不是ID
尝试
<table id='table1' border="1">
<tr class='hideme'>
<td class='letmehide'>row 1, cell 1</td>
<td class='letmehide'>row 1, cell 2</td>
</tr>
<tr class='donthideme'>
<td class='dontletmehide'>row 2, cell 1</td>
<td class='dontletmehide'>row 2, cell 2</td>
</tr>
</table>
然后
$('#table1 tr:has(td.letmehide)').hide()
演示:Fiddle
答案 5 :(得分:0)
$("#letmehide").parent().hide();
答案 6 :(得分:-1)
对于要对多个 tr 使用相同的 id 的其他人 试试这个:
$(this).closest("tr").hide();