我正在使用不允许我编辑HTML的CMS,我只能使用JavaScript和HTML来自定义它的外观。有一个包含3个表的页面,我想从第二个表中删除(或隐藏)第二列。这是HTML代码:
<TABLE>
<TR>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD> </TD>
<TD> </TD>
</TR>
</TABLE>
<TABLE>
<TR>
<TH>Row 1</TH>
<TH>Row 2</TH>
<TH>Row 3</TH>
</TR>
<TR>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
</TABLE>
<TABLE>
<TR>
<TH>Row 1</TH>
<TH>Row 2</TH>
<TH>Row 3</TH>
</TR>
<TR>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
<TR>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
</TABLE>
如何删除第二个表中的第二列?
答案 0 :(得分:3)
检查这个小提琴:http://jsfiddle.net/FJfbW/1/
$('td:nth-child(2), th:nth-child(2)', 'table:eq(1) tr').css('background', '#f00');
您可以在不使用.remove()
的情况下使用.css()
来删除列
答案 1 :(得分:1)
使用jquery:http://jsfiddle.net/upeVs/
$('table:eq(1) tr td:nth-child(2),table:eq(1) tr th:nth-child(2)').remove();
修改:
@blackpla9ue
给出的解决方案可能会更高效,因为它只查找一次表行:
$('td:nth-child(2), th:nth-child(2)', 'table:eq(1) tr').remove();
答案 2 :(得分:0)
我看到表中没有id。所以@ blackpla9ue的答案是最合适的。但是如果您需要删除具有id的表的第二行,请转到下面的代码。
$('td:nth-child(2), th:nth-child(2)', '#tblEventSearchResults tr').css('background', '#f00');