表行显示/隐藏 - 删除()

时间:2012-03-27 06:30:59

标签: javascript jquery

我的问题是,为什么我不能使用hide()& show()隐藏/显示我网页上的表格行。如果我使用其中的任何一个,浏览器会冻结,但如果我使用remove()它可以正常工作,但是我无法将此行恢复(或?)。

如果我使用show并隐藏在任何其他东西上它的工作就好了。我做错了什么?

    for(var i=0; i<=pages-begin; i=i+1){
       if($("#myTable2 tr:nth-child("+i+") td:nth-child("+ rowIndex +")").text() == $(this).text()){
       $("#myTable2 tr:nth-child("+i+") td:nth-child("+ rowIndex +")").parent().remove(); i=i-1;}
    }

编辑:

我使用了live(),正如我刚刚读到的那样切换,这样在live()内部无效...但我还是需要回答:(

$("#dropMenuFilter ul li").live("click", function(){
for(var i=0; i<=strani-zacetek; i=i+1){
    if($("#myTable2 tr:nth-child("+i+") td:nth-child("+ rowIndex +")").text() == $(this).text()){
    $("#myTable2 tr:nth-child("+i+") td:nth-child("+ rowIndex +")").parent().fadeOut(); i=i-1;}
}});

dropMenuFilter是一个div,我在其上附加了.text()的{​​{1}},我希望,当我点击它时,它将删除此td:table行的父级。它适用于<td> ...

1 个答案:

答案 0 :(得分:0)

soloution:

function removeRow(vrstica){
    $("#myTable2 tr:nth-child("+vrstica+") td:nth-child("+ rowIndex +")").parent().toggle();
}

$("#dropMenuFilter ul li").live("click", function(){
    for(var i=1; i<=strani-zacetek; i+=1){
        if($("#myTable2 tr:nth-child("+i+") td:nth-child("+ rowIndex +")").text() == $(this).text()){
            removeRow(i);
        }
    }
})