将行永久隐藏在表中

时间:2012-12-24 09:28:38

标签: php javascript html css

我正在使用此代码显示表

    <table>
        <tr>
            <th style="height: 25px">NAME</th>
            <th style="height: 25px">EMAIL</th>
            <th style="height: 25px">CELL NO</th>
            <th style="height: 25px">CITY</th>                   
            <th>Hide Candidate</th>
        </tr>
    </table>

    <?php
    while($data_set1 = mysql_fetch_array($result))
    {
        echo "<tr>";
        echo "<td>{$data_set1['ename']}</td>";
        echo "<td>{$data_set1['eemail']}</td>";
        echo "<td>{$data_set1['ecell']}</td>";
        echo "<td>{$data_set1['ecity']}</td>";

        echo "<td><input type=\"checkbox\" name=\"hide_cand\" id=\"hide_cand\" onclick=\" return hideRow(this)\"/></td>";
\"/></td>";
        echo "</tr>";
    }
    ?>

使用这个javascript我可以暂时隐藏表格行,如何在页面加载表格时永久隐藏它

function hideRow(checkbox)
{
    if(confirm('This action can not be recovered, are you sure you want to HIDE this Candidate? '))
    {
        checkbox.parentNode.parentNode.style.display = "none";
        return true;
    }
    return false;
}

3 个答案:

答案 0 :(得分:2)

你看过jQuery(http://jquery.com/)吗?它的学习非常简单,您只需这样做:

在HTML标题中,只需添加

即可
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>

然后通过

修改你的功能
function hideRow(checkbox)
{
    if(confirm('This action can not be recovered, are you sure you want to HIDE this Candidate? '))
    {
        $(this).closest("tr").remove();
        return true;
    }
    return false;
}

答案 1 :(得分:0)

删除没有jQuery

function hideRow(checkbox)
{
    if(confirm('This action can not be recovered, are you sure you want to HIDE this Candidate? '))
    {
        var row = checkbox.parentNode.parentNode , table = row.parentNode;
        table.removeChild(row);
        return true;
    }
    return false;
}

答案 2 :(得分:0)

您通过将样式显示设置为none暂时隐藏该行。你的问题是一旦隐藏了这一行,那么在重新加载操作完成后它就不会再出现了。

因此,为了永久隐藏行,您必须从数据库本身删除相应的用户记录。如果在数据库中删除,那么您将无法从数据库中获取相同的记录,因此重新加载页面时不会显示该行。

希望这个建议适合你。