我的应用程序中有两个 javascript/jquery 函数,总是有 refresh() 函数,它从数据库中获取数据并重绘前端视图。
一种方法是将数据发送到 PHP 函数中,该函数可以简单地插入 MySQL 数据库,然后对其进行编辑,在这里它们是(它们是相同的,所以我只发布一个):
function insertedit()
{
$('.res').each(function()
{
$.post("/controller/method/",{id: id},function(data,status,xhr)
{
if(status=="success")
{
}
})
});
refresh();
}
当我尝试使用此功能插入数据时,一切正常,并且我的视图正在异步重绘,但是当我尝试使用它编辑数据时 - 我必须刷新页面才能看到更新的视图。我认为,该编辑操作比插入和我的刷新功能需要更多的时间,它从 SQL 中抓取数据只是抓取旧数据(未删除的记录) - 我该如何修复它?
编辑
$(function()
{
refresh();
});
function insertedit(){
var $promises = [];
$('.res').each(function()
{
$promises.push(
$.post("/controller/metgod/",{id, id},function(data,status,xhr)
{
if(status=="success")
{
}
})
);
});
$.when.apply($, $promises).then(function() {
refresh();
});
}