Jquery AJAX没有在ie中刷新页面

use*_*926 1 asp.net ajax jquery browser-cache

我有一个ASP.Net应用程序,它使用jQuery的AJAX POST方法来更新DOM.

  1. 用户输入日期
  2. 用户单击链接按钮
  3. JQuery ajax调用数据库后会加载一个带有请求数据的div.

除非用户在IE中手动刷新页面,否则一切正常.
如果他们进行了更改,则点击浏览器刷新按钮,然后再次执行这三个步骤,即使数据库已正确更新,也不显示他们刚刚输入的更新数据.

它显示原始数据.

他们必须完全关闭浏览器并重新打开它以查看更改.

这只发生在IE中.
FF和Chrome会在刷新时显示更改.

我在这里错过了什么?

Ant*_*ist 5

Internet Explorer将AJAX请求缓存到URL,并在您对同一URL进行另一次AJAX调用时返回缓存的响应.值得庆幸的是,cache在jQuery AJAX调用上设置选项false将导致时间戳被附加到URL,从而绕过缓存.

要为所有jQuery AJAX请求设置该选项,您可以使用如下$.ajaxSetup()函数:

$.ajaxSetup({cache : false});
Run Code Online (Sandbox Code Playgroud)

将它放在.js文件的顶部,以便在任何AJAX请求之前执行它.