Javascript 隐藏整列
隐藏它所在的列。我创造了 我的桌子在下面Javascript 隐藏整列,javascript,jquery,html,Javascript,Jquery,Html,隐藏它所在的列。我创造了 我的桌子在下面 <table id="tester" border='1'> <tbody> <tr> <td>test1</td> <td>test2</td> <td>test3</td> </tr> <tr> <td>test1<
<table id="tester" border='1'>
<tbody>
<tr>
<td>test1</td>
<td>test2</td>
<td>test3</td>
</tr>
<tr>
<td>test1</td>
<td></td>
<td>test3</td>
</tr>
<tr>
<td>test1</td>
<td>test2</td>
<td>test3</td>
</tr>
<tr>
<td>test1</td>
<td>test2</td>
<td>test3</td>
</tr>
<tr>
<td>test1</td>
<td>test2</td>
<td>test3</td>
</tr>
</tbody>
</table>
测试1
测试2
测试3
测试1
测试3
测试1
测试2
测试3
测试1
测试2
测试3
测试1
测试2
测试3
下面是我正在尝试使用的Jquery
<table id="tester" border='1'>
<tbody>
<tr>
<td>test1</td>
<td>test2</td>
<td>test3</td>
</tr>
<tr>
<td>test1</td>
<td></td>
<td>test3</td>
</tr>
<tr>
<td>test1</td>
<td>test2</td>
<td>test3</td>
</tr>
<tr>
<td>test1</td>
<td>test2</td>
<td>test3</td>
</tr>
<tr>
<td>test1</td>
<td>test2</td>
<td>test3</td>
</tr>
</tbody>
</table>
任何帮助都将不胜感激。我想你正在寻找
$.each($('table > tbody > tr'), function(){
if($(this).find('td:empty').length>0){
// You can hide
$(this).hide();
// Or Remove
$(this).remove();
// Or Fadeout and remove
$(this).fadeOut(250, function(){$(this).remove();});
}
});
试试这个:
function hidecol2() {
var cell = $('#tester > tbody > tr:eq(1) > td:eq(1)');
if (cell.text() == '') cell.parent().parent().children().children(':nth-child(2)').hide;
};
要在其中一个单元格为空时隐藏整个列,请使用以下命令:
$.each($('td:empty'), function(){
$('td:nth-child(' + ($(this).index() + 1) + ')').hide();
});
迭代td并使用$('td').text()将其文本提取到变量中,然后检查该变量的长度。>0可能是一个$('td:nth child(2)')。style.display=“无”;工作(我不知道)JSFIDLE示例似乎选择了“纯js”,并且在我添加jquery后,它确实隐藏了一列。还有更多吗?事实上,
如果(cell.Is(':empty')==''可能被认为是更好的样式。对不起,是我的错。尝试以下操作:if(cell.text()='')cell.parent().parent().children().children(':第n个子项(2)).hide对不起,我误解了你的问题。您需要在我们的JSFIDLE中包含jQuery,并使用我放在answear中的代码