最近项目中遇到一个问题,在IE8,9下,页面定时刷新数据无效。js也没有报错,就是数据一直保持不变,刷新页面也没有用。
debug程序,发现每次返回的数据都是一样的;在IE9中打开调试工具,切换到网络标签,捕获网络请求,发现有的返回状态码304,有的返回200.
在网上经过查询发现,返回状态码304代表请求内容没有改变,而200代表请求成功。
打开js文件,发现Ajax请求返回200的都是post请求,而返回304的都是get请求。于是将所有的Ajax请求修改为post请求,再次刷新页面,定时刷新页面成功。
总结: 如果发现IE8,9下Ajax请求数据不会改变,解决办法就是将get请求修改为post请求。