使用jQuery的$.getJSON函数似乎是做了缓存处理,比如struts中有一个action是输出的json格式的数据,action路径是getsyncpath:
function getResult(){
$.getJSON( getsyncpath,null,function call(data){
var flag_sync = data.result;
alert(flag_sync);
if(flag_sync == true) {
$("#waitdiv").hide();
$("#main").show('slow');
}else {
setTimeout(function() { getResult() }, interval_getSyncflag);
}
});
}
这里不管是用循环还是setTimeout 还是setInterval getResult函数都只执行一次,alert(flag_sync) 每次都会弹出,但是不执行getsyncpath 里的 action,在action中跟踪输出可以看出action根本没有被调用,即使数据库的数值变化了jQuery也不调用action。只有在另外一张网页直接打开getsyncpath 的json输出并且刷新输出 这里的网页才会再次调用action。
解决办法:在getsyncpath 连接后面加上一个时间戳,加一个参数&time=new Date();这样每次生成的链接都不同了,就避免了缓存的情况。
分享到:
相关推荐
$.getJSON(“/MyQueryUrl”,function(data,item) { // do stuff with callback data $.ajaxSetup({ cache: true }); }); 原因:getJson在IE下IE下默认会使用浏览器缓存,所以导致数据不显示 解决:让其不要使用缓存...
Jquery 的 $.getJSON请求有一个缓存机制 就是在请求相同URL访问后台时候 他会直接从页面缓存的数据中取出来数据 而不是请求后台 所以我们要改变一个URL 这是我们的URL var url =“XXXX/XXX” 下面来一个 生成随机数...
$.getJSON()存在缓存问题,如果其调用的url之前曾经调用过的话,回调函数就会直接在缓存里取得想要得值,而不是进入到后台 解决方法如下: 1、让每次调用的URL都不一样。 方法:在参数中加一个随机数 代码如下:$....
http://wenku.baidu.com/view/3d2b01a93169a4517723a3f3.html Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结 http://zhuanlan.zhihu.com/FrontendMagazine/19854868 基于单个 Div 的 CSS 绘图 ...
[queueName]) 设置 jQuery.fx.off Ajax Ajax 请求 $.ajax([options]) load(url, [data], [callback]) $.get(url, [data], [fn], [type]) $.getJSON(url, [data], [fn]) $.getScript(url, [callback]) $.post(url, ...
$.getJSON(url, [data], [fn]) $.getScript(url, [callback]) $.post(url, [data], [fn], [type]) Ajax 事件 ajaxComplete(callback) ajaxError(callback) ajaxSend(callback) ajaxStart(callback) ajaxStop...
$.getJSON(url,[data],[fn]) $.getScript(url,[callback]) $.post(url,[data],[fn],[type]) ajax 事件 ajaxComplete(callback) ajaxError(callback) ajaxSend(callback) ajaxStart(callback) ajaxStop...
$.getJSON(url, [data], [fn]) $.getScript(url, [callback]) $.post(url, [data], [fn], [type]) Ajax 事件 ajaxComplete(callback) ajaxError(callback) ajaxSend(callback) ajaxStart(callback) ajaxStop...
$.getJSON(webApp + "/GetShowData.do?limit=" + limit,function(data){ //****************** } 原因是,在IE9下,进行Ajax请求时,若与之前请求相同,则不会再从浏览器获取数据,而是直接从本地获取,因此,在...
$.ajax({ type: "GET", url: "test.js", dataType: "script" });保存数据到服务器,完成后通知用户。 $.ajax({ type: "POST", url: "some.php", data: "name=John&location=...
cache: false, //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*) pagination: true, //是否显示分页(*) sortable: false, //是否启用排序 sortOrder: "asc", //排序方式 query...
1.特点具有缓存支持的快速文件服务器全面的HTTP 1.1支持(GET / POST) 反向代理带有Gson库的JSON支持2.如何建造为了构建和运行,首先克隆项目: $ git clone https://gitlab.com/kasra.sh13/mikroserver.git 然后...
这是一个用于缓存JS对象像(JSON,数组)都可以的一个小工具,在开发项目过程中,会比较实用。 JS对数据做缓存,应用场景,有的时候通过ajax去获取一些不是经常变动数据的时候,不用每次去请求,直接进缓存 1. 将数据...