繁体   English   中英

如何在$ .getJSON()中传递`Cache:false`

[英]How to pass `Cache: false` in $.getJSON()

我在IE 10中有一个ajax调用缓存问题。因为该解决方案是在ajax调用中传递cache: false 我面临着这个问题。 我怎么能通过Cache: false呢?

$.getJSON(url , function(data){ //some code here }

试试这样:

$(document).ready(function() {
  $.ajaxSetup({ cache: false });
});

即,您需要调用jQuery.ajaxSetup()方法并将值false传递给cache属性,这将导致jQuery禁用对ajax调用的缓存。

正如Jitesh 在这里回答的那样你可以试试这个:

$.ajaxSetup({ cache: true});
$.getJSON("/MyQueryUrl",function(data,item) {
     // do stuff with callback data
     $.ajaxSetup({ cache: false});
   });

您无法将任何配置参数传递给$.getJSON 正如文档所述,它是一个简写函数:

$.ajax({
  dataType: "json",
  url: url,
  data: data,
  success: success
})

因此,您可以使用该代码,然后设置cache: false或使用$.ajaxSetup全局设置它。

$(document).ready(function() {
  $.ajaxSetup({ cache: false });
});

要么:

$.ajax({
    type: "GET",
    cache: false,
    url: "yourURL",
    //other settings
    success: function(data) {
      //do something with data
    }
});
JSONObject  jsobj = new JSONObject();
JSONArray  jsobjs = new JSONArray();

我有一个类似的问题。 我尝试了以上所有建议,但问题没有解决。 然后我发现在我的servlet类中,我在类级别上面声明了两个对象。 我在doPost()方法中移动了这些声明。 问题得到了解决。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM