[英]Page reload after ajax request for delete
我有一个网页,其中显示表格的所有记录,并在其前面有一个复选框。 我可以选择这些框,然后发出ajax请求以将其删除。
删除工作正常。 但即使刷新后,它也会显示已删除的记录。
我用于重定向的内容
-
window.location.href ='/ current_page';
location.reload(真)
我用他们成功回调。 如果我单击浏览器,那么它可以工作。
尝试通过调用以下函数来使用锚来重定向:
function redirectFunc(){
var link = document.createElement('a');
// set your page url
link.href = "url";
document.body.appendChild(link);
link.click();
}
使用Math.random生成哈希并将其放入页面的href中。 这样就可以在没有缓存的情况下重新加载页面。 高速缓存查找地址页面,用于查询高速缓存中的内容。
看这个例子:
function reloadWithNoCache(){ window.location = window.location.href + '?eraseCache=' + Math.random(); }
<input type="button" value="Refresh With No Cache" onclick="reloadWithNoCache()"/>
您尝试做的方式是一种骇人听闻的方式。 如果您尝试刷新页面,然后使用位置重载或其他任何方式,那么毫无意义地进行ajax调用,您可以简单地进行一次delete调用,并将页面定位为新URL,就像初始请求一样。
该解决方案将更大一些,但可以扩展。 我希望您可以使用一些前端模板来提供初始数据,以将初始数据提供给表。 因此,在成功执行ajax请求而不是重新加载页面时,请尝试使用其余的数据重建DOM。
例如:model = {1,2,3}表包含1 2 3
删除后,将模型更新为1 3(如果已删除2),并使用新模型{1,3}调用表的render方法,以擦除旧表。 如果您认为数据太重(除非数据太大),以至于可能会给用户带来性能上的困扰,则可以采用这种方法。
无需刷新页面。 您可以在ajax成功回调中使用jQuery删除表中的行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.