jQuery在IE中缓存AJAX请求,即使缓存:"false"已设置

Chr*_*ris 9 ajax jquery internet-explorer caching

我有以下代码

$.ajax({type: "GET",
  url: "/" + filename,
  dataType: "xml",
  cache: "false",
  success: function(xml)
{
    /* Parsing code here */
}});
Run Code Online (Sandbox Code Playgroud)

在Chrome等中,请求不会被缓存,但它们在IE中.我正确地构建了我的请求吗?

Mat*_*att 22

cache 应该是布尔值,而不是字符串:

$.ajax({type: "GET",
  url: "/" + filename,
  dataType: "xml",
  cache: false,
  success: function(xml){
    /* Parsing code here */
  }  
});
Run Code Online (Sandbox Code Playgroud)

  • @Pekka - 这是真的,但在这个特定的情况下,[jQuery与===比较](http://github.com/jquery/jquery/blob/master/src/ajax.js#L261),但它只是如果`s.cache === false`则尝试避免缓存(但当然,"false"=== false => false) (4认同)
  • 好的缓存我的意思是抓住 (3认同)
  • @James:你很喜欢选择喜剧编程作为职业道路.:P (3认同)
  • 如果没有使用`===`进行比较,+1字符串`"false"`将被解释为`true`. (2认同)