码迷,mamicode.com
首页 > Web开发 > 详细

jquery的ajax发送请求后前端不能实时更新

时间:2020-01-15 09:26:54      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:fetch   响应   one   结果   错误   div   jquer   cti   发送请求   

在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发送请求后前端不能实时更新

标签:fetch   响应   one   结果   错误   div   jquer   cti   发送请求   

原文地址:https://www.cnblogs.com/missbye/p/12194944.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!