Html 动态折叠多行(底部额外空间)时具有rowspan的IE7

Html 动态折叠多行(底部额外空间)时具有rowspan的IE7,html,internet-explorer,html-table,row,hide,Html,Internet Explorer,Html Table,Row,Hide,我正在尝试使用Javascript动态隐藏/取消隐藏多个表行,以模拟折叠/展开。以下是相关的代码片段: function selectionFilter(check, filter){ var elem = document.getElementById('myScrollTable').rows; for(i = 0; i < elem.length; i++){ var type = elem[i].getAttribute('t

我正在尝试使用Javascript动态隐藏/取消隐藏多个表行,以模拟折叠/展开。以下是相关的代码片段:

function selectionFilter(check, filter){
        var elem = document.getElementById('myScrollTable').rows;
        for(i = 0; i < elem.length; i++){
            var type = elem[i].getAttribute('type');
            if(type== filter){
                if(check == true){
                    elem[i].style.display='';
                }else{
                    elem[i].style.display='none';
                }
            }
        }
    }
功能选择过滤器(检查,过滤器){
var elem=document.getElementById('myScrollTable')。行;
对于(i=0;i
下面是示例HTML:

    <input type="checkbox" checked="true" value="t1" onclick="selectionFilter(this.checked, this.value);">some type 1</input >
<input type="checkbox" value="t2" onclick="selectionFilter(this.checked, this.value);">some type 2</input ><br><br>
<table cellspacing="1" cellpadding="2" class="" id="myScrollTable">
    <thead>
        <tr>
            <th>Data1</th>
            <th>Data2</th>
        </tr>
    </thead>

    <tbody>
        <tr type="t1">
            <td rowspan="50"><a href="something1">something1</a></td><td><a href="something2">something2</a></td>
        </tr>
        <tr type="t1">
            <td><a href="something2">something2</a></td>
        </tr>
            .
            .
        <tr type="t2" style="display:none;">
            <td rowspan="50"><a href="something1">something1</a></td><td><a href="something2">something2</a></td>
        </tr>
        <tr type="t2" style="display:none;">
            <td><a href="something2">something2</a></td>
        </tr>
            .
            .
    </tbody>
</table>
某些类型1
某些类型2

数据1 数据2 . . . .
在Firefox中,一切都很好。然而,在IE中,在第一次隐藏任何行之后,当它被取消隐藏时,它在底部附加了一些额外的空间。不使用rowspan时不会发生这种情况。我尝试了很多东西,但都没能摆脱多余的空间


如果有人能给我一些提示,我将不胜感激。

您是否尝试使用块而不是空字符串

你应该尝试使用

elem[i].style.display = 'block';
如果失败了,你应该试试

elem[i].style.display = 'table-row';
你应该经常查看w3schools文档,它真的很有用


告诉我这是否适用于您

可能与此无关,但在该HTML示例中,您似乎缺少
type=“t2”
附近的一个开头标记。感谢您的通知,这是真的。我在飞行中写了这个例子,它可能不是一个真正的工作版本。谢谢你的回复。我尝试了那些选择,但不幸的是我没有运气。除此之外,我对提供的html代码做了一些小改动(将rowspan=“50”从标记移动到,我的错)