我用jquery ui 弹出一个购物车的对话,通过AJAX加载的数据。发现购物车被缓存,一直看到是旧数据。为了刷新购物车更新,我必须去加一个刷新按钮,点击后更新购物车页面。有没有一种方法来自动刷新加载到对话框的内容?
我在加载使用下面的代码内容:
function loadCart() { $('#dialog').load('...url to cart page...');
$('#dialog').dialog({ autoOpen: false, 768, bgiframe: true, modal: true, position: ['center',30] });
$('#dialog').dialog('open');
}
最简单的方法是这样做:
$.ajaxSetup ({ cache: false //禁用缓存 });
如果你想更细粒度地控制特定的AJAX调用,你必须跳过使用load()方法,使AJAX调用标准的方式,指定缓存:false属性。
另一种选择是手动附加一个随机字符串到你load()方法的url后面,如http://www.cxyclub.cn/?timestamp=vnoe98295q232ei15t34kj,这将迫使浏览器每次都重新请求页面,不缓存页面Cache。我更喜欢第一种方法,显然是最简单的清空jquery弹出窗缓存Cache和刷新页面方法。
文章来自: 程序员俱乐部(www.cxyclub.cn) 详文参考:http://www.cxyclub.cn/n/34920/