虽然我知道这不是一个大问题,但我找到了一个问题,但是当我新的时候,有些事情与我不同。我有一个页面,其中包含从数据库中获取的记录列表。现在有一个按钮,点击记录后,将打开一个弹出窗口以及一些数据。在弹出的内部另一个链接被称为“恢复”,无论何时,链接将被点击,数据库已被更新。现在,这对我来说没问题。但每当我关闭弹出窗口时,我的记录列表应该会自动更改,因为某些记录已经恢复。但是我没有得到结果,除非我不刷新页面。所以我怎么能这样做,请帮助我......
$(function() {
$(".delete").click(function() {
$('#load').fadeIn();
var commentContainer = $(this).parent();
var id = $(this).attr("id");
var string = 'id='+ id ;
$.ajax({
type: "POST",
url: "restore-request-process.php",
data: string,
cache: false,
success: function(){
commentContainer.slideUp('slow', function() {$(this).remove();});
$('#load').fadeOut();
}
});
//return false;
});
});
在restore-request-process.php页面中,我只是更新数据库并回显id。
答案 0 :(得分:0)
数据库更新后,调用函数来更新前端或只使用location.reload()
重新加载页面
答案 1 :(得分:0)
您需要在父窗口中声明全局函数
function Update(){
//global function in parent, update div
}
弹出窗口调用函数
window.opener.Update();
将自动重新加载你的div,而不是所有页面,如果没有必要
答案 2 :(得分:0)
假设这是您的商家信息格式
<table>
<?php
foreach($results as $result) { ?>
<tr id="my_div">
<td><?php echo $result->name?></td>
<td class="delete" id="<?php echo $result->id?>"><img src="delete.png"/></td>
</tr>
<?php } ?>
</table>
在restore-request-process.php中编写一个查询,从数据库中获取所有结果,然后像这样回显结果
$result = mysql_query("SELECT * FROM my_table");
while($row = mysql_fetch_array($result))
{
echo '<td>'. echo $row["name"].'</td>
<td class="delete" id="'. echo $row["id"].'"><img src="delete.png"/></td>' ;
}
和onsuccess用响应文本替换了my_div中的所有内容
CODE IS NOT TESTED
如需更多参考,您可以浏览this link