我正在使用codeigniter和jquery。我正在使用ajax将一些信息发送到codeigniter函数以执行db操作,以便更新页面。
$.ajax({
type: "POST",
url: BASE_URL+"Update/update",
data:{ i : searchIDs, m : message },
dataType: 'json',
success: function(data) {
console.log(data);
},
error: function(data) {
console.log(data);
},
complete: function() {
alert("REFRESHING..");
window.location.href = "pan_controller/reply";
}
});
操作完成后,我想重新加载页面。这通常在我的WAMP本地工作。但是,当我部署到共享主机时,我通常需要手动重新加载页面(使用浏览器中的重新加载按钮 - 上面的屏幕截图)。我看到萤火虫没有错误。我尝试了各种修复,但最近开始怀疑这是否是我的共享托管服务器上的缓存问题。如果是这样有更好的方法来重新加载使用jquery而不仅仅是重定向,以避免共享主机上的缓存?
答案 0 :(得分:1)
在页面未重新加载时,您是否已确定complete
函数正在运行?如果是这样,那么我认为你是对的,这是一个缓存问题。
您可以尝试在window.location.href
值的末尾添加timestamp参数,以使其每次都是唯一的,并避免缓存出现任何问题,尽管更好的方法是使用响应发回正确的标头,以便浏览器知道不要缓存该页面。
window.location.href = "pan_controller/reply?t=" + (new Date().getTime());