2013-06-24 74 views
2

HTML:隐藏列

<table class="list qy"> 
<tr> 
    <td>cell1</td> 
    <td class="q">cell2</td> 
    <td>cell3</td> 
    <td class="y">cell4</td> 
</tr> 
</table> 

CSS:

table.qy td.q, table.qy td.y { display: none; } 

JS:

function toggleQY(b) { 
$("table.list").toggleClass("qy") 
} 

它迅速开展工作比JS运行为一个($(“table.list td.q,table.list td.y”)...) 但它不工作在IE浏览器(8,9)...

据我了解,增加了对表,但表中没有刷新...

我不有想法(((

PS对不起,我的英语

+0

应该工作,但无论如何尝试'知名度:hidden' - 除非你需要它从文件中消失流动 – casraf

+0

我很惊讶,如果这实际工作。使用'display:none'会将表格单元从文档流中取出,但是这会创建一个格式不正确的表格,因为您缺少一个单元格!你可能不得不扩大其他单元格来用'colspan = 2'填充这个空间......也许最好是将单元格包装在另一个div中,或者只使用'visibility:hidden'。这是表格数据BTW吗? – ProfileTwist

回答

2

如果你正在试图做的一切都是拨动元素的可见性,你总是可以只使用.toggle()

$('table.list').find('.q, .y').toggle() 
+0

工作很好,看起来不错)太棒了! TNX! – Wrun

0

你是不是想默认隐藏的列,然后点击表再次显示他们?那么你可能想是这样的......

默认隐藏特定的列的CSS:

.list .q, .list .y { 
    display:none; 
} 

然后后面那个,我假设要切换上表点击你的隐藏的列。 jQuery的:

$(function() { 
    $('table.list').on("click",function(){ 
    $(this).find('.q, .y').toggle(); 
    }); 
})