0

我有这个链接(如下所示)。单击它时,它会将帖子的 id 发送到名为 delete_post.php 的 PHP 文件,该文件又会从我的 MySQL 数据库中删除具有该 id 的帖子。这很好用,只是在帖子被删除后,帖子仍然显示在页面上,直到它被刷新。我怎样才能做到这一点,以便在我单击链接后立即从我的页面中删除帖子,而不是在我单击链接后刷新页面后。

<a href="javascript:$.post('delete_post.php', { id: '$row[id]' } );" class='delete_post' title='delete post'>delete post</a>
4

3 回答 3

2
  1. 将 ID(使用$row['id'])添加到保存帖子的 div / table 行(容器)。
  2. AJAX 完成后,您只需隐藏容器即可。

要在 AJAX 完成后隐藏容器,只需$.post添加一个回调函数,如下所示:

javascript:$.post('delete_post.php', { id: '$row[id]' } , function(){ $('#row$row[id]').hide(); });
于 2011-03-11T02:10:18.480 回答
0

我不熟悉 jQuery 代码(如果需要示例,我可以在 Prototype 中执行)但是,您应该将侦听器附加到链接而不是调用 AJAX 内联。这样,您可以使用jQuery 的 DOM 遍历函数向上移动到父 div 或表行,并且在您从 AJAX 调用获得成功响应后只需简单地.remove()即可。

于 2011-03-11T02:27:13.507 回答
-1

post() 函数有一个可选的第三个参数,它允许您创建一个在成功时执行的匿名函数。

<a href="javascript:$.post('delete_post.php', { id: '$row[id]' }, function() { location.reload(); } );" class='delete_post' title='delete post'>delete post</a>
于 2011-03-11T02:11:53.163 回答