【问题标题】:Deleted table row reappears after refresh刷新后重新出现已删除的表行
【发布时间】:2015-01-06 02:58:10
【问题描述】:

我有一个简单的 html 表,以及在单击删除时删除一行的脚本,但是一旦我刷新页面,删除的行就会再次出现。我怎样才能真正删除文件中的行?需要用php吗?

HTML:

<table id="row"> 
  <tr>
    <td><a href=''>row1</a></td>
    <td><a  class='delete' href=''>Delete</a></td>  
  </tr>
  <tr>
    <td><a href=''>row2</a></td>
    <td><a  class='delete' href=''>Delete</a></td>  
  </tr>
  <tr>
    <td><a href=''>row3</a></td>
    <td><a  class='delete' href=''>Delete</a></td>  
  </tr>
</table>

脚本:

<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script>
$(document).ready(function() {
    $("#row .delete").on("click",function() {
        var tr = $(this).closest('tr');
        tr.css("background-color","#FF3700");
        tr.fadeOut(400, function(){
            tr.remove().clone();
        });
        return false;
    });
});
  </script>

【问题讨论】:

  • 当您刷新页面时,您将重新开始。您只是从 DOM 中删除,不能从 JavaScript 更改 html 文件本身。
  • 您可能需要从数据库中删除,或者如果您没有数据库,您将在文件中提供静态 html,而不是在服务器上修改文件的内容。您发布的 javascript 只是在运行时执行后将其从用户显示中删除。它实际上不会修改存储信息的任何文件或数据库的内容。
  • 有没有办法用php做到这一点?
  • 你可以用 PHP 做任何事情。它在服务器上运行,您可以通过 Ajax 与它进行通信,例如。但是如果你真的要问这些类型的问题,你需要从阅读一三本书开始,涵盖使用 PHP、jQuery 和可能的 MySQL 的基本网站建设(因为你在谈论一个动态网站,即使它是一个单一的看似微不足道的页面)。
  • 这看起来像是之前提出的另一个问题?看看我的回答,看看是否有帮助。 stackoverflow.com/questions/26821704/php-unlink-when-clicking/…

标签: javascript jquery html html-table rows


【解决方案1】:

如果此表是在静态 HTML 页面上创建的,那么我不知道如何删除该行并在刷新后将其删除(可能您应该看看本地对象存储的使用情况)。

如果此表是使用从给定数据库中获取的数据(使用 php 解析的数据)生成并使用 html/css 在页面上呈现的,那么是的,即使在页面刷新后,您也应该使用 PHP 删除该行。

您发布的 jquery 代码仅在您重新加载页面之前有效,因此当您重新加载页面时,一切都会恢复到初始状态,因为当您单击 X 按钮(删除按钮)时,您实际上并没有删除任何内容......您刚刚隐藏了表格的一行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-28
    • 2012-08-03
    • 2019-04-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多