jquery的ajax发送请求后前端不能实时更新
Posted 白小白学IT
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery的ajax发送请求后前端不能实时更新相关的知识,希望对你有一定的参考价值。
在IE下用Ajax请求某一页面,通常会因为缓存的原因而返回上一次的结果,造成混乱(比如说多次请求却没有响应)。
错误代码如下:
$.get("fetch.php") .done(function(data){ html = ‘‘; $.each(JSON.parse(data),function(k,v){ html += v+"/"; }); $("#uprecord").html(html); })
这段代码在第一次执行时会实时刷新,但如果执行多次后,页面显示的还是最初的数据,并不会实时刷新。问题根源在于GET请求的页面不变,没有参数基本就是等于相同,所以在页面不变,参数也不变的情况下,get不会从后台去请求数据,而是从缓存取。为了解决这个问题,可以传入一个时间戳的参数,正确代码如下:
$.get("fetch.php",{ rd:new Date().getTime()}) .done(function(data){ html = ‘‘; $.each(JSON.parse(data),function(k,v){ html += v+"/"; }); $("#uprecord").html(html); })
以上是关于jquery的ajax发送请求后前端不能实时更新的主要内容,如果未能解决你的问题,请参考以下文章