我想在加载脚本时禁用时间戳。请看图像
http://dl.dropbox.com/u/19616542/Capture.PNG
我还设置了ajax,cache:true。这是代码:
$.ajax({
url:url
data:{},
type:'post',
cache: true,
dataType:'json',
success:function(data,status){
//something here
}
else {
window.location.reload();
}
}
});
我也有html的标题
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Pragma" content="Public">
<meta http-equiv="Cache-control" content="public">
<meta name="keywords" content="something">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta http-equiv="Content-Script-Type" content="text/javascript">
我正在使用jQuery.1.7.2
答案 0 :(得分:3)
我不确定为什么jQuery会尝试加载自己,但这似乎与$.getScript()
次调用有关。
您可以考虑尽可能高地添加以下代码段:
$.ajaxSetup({
cache: true
});
将cache: true
放在$.ajax()
中不会以任何方式影响$.getScript()
,这就是您在该屏幕截图中看到的内容。
答案 1 :(得分:1)
我对codeIgniter没有太多了解,但它应该与CakePHP中的相同。你应该有一个像config或类似的文件名包含调试级别。当它设置为调试mod时,它可能会自动为脚本添加时间戳并以不同的方式处理堆栈错误
答案 2 :(得分:1)
$.ajaxPrefilter('script', function(options) {
options.cache = true;
});
// or
+ function($) {
$.cachedScript = function(url, options) {
// Allow user to set any option except for dataType, cache, and url
options = $.extend(options || {}, {
dataType: "script",
cache: true,
url: url
});
// Use $.ajax() since it is more flexible than $.getScript
// Return the jqXHR object so we can chain callbacks
return $.ajax(options);
};
}(jQuery);
// now, you can use $.cachedScript()
您可以查看文档$.getScript()