我的index.php代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<script src="js/jquery.js"></script>
<script>
$(function(){
$("body").load("AJAX.php");
});</script></head>
<body>
</body>
</html>
我的AJAX.php代码
<body>
<script src="js/asdf.js"></script>
</body>
和我的asdf.js代码
function cool(){
alert("hi");}
现在当我加载index.php并看到它输出的控制台
[16:21:57.237] GET http://localhost/js/asdf.js?_=1342003917230 [HTTP/1.1 200 OK 8ms]
现在我想知道为什么它将随机数添加到js文件的url以及如何防止它?
答案 0 :(得分:3)
请参阅the docs for the ajax method:
cache
默认:
true
,false
用于dataType
'脚本'和'jsonp'如果设置为
false
,则会强制请求的页面不被缓存 浏览器。将cache设置为false也会附加查询字符串参数, “_ = [TIMESTAMP]”,到URL。
答案 1 :(得分:2)
添加它是为了防止从浏览器缓存中提供文件。
如果您在jQuery中使用.load方法,可以通过传递选项{cache:false}
$.ajaxSetup({cache : true});
$.load(url, data, function() {
// callback function
});
或
$.ajax(url, {cache : true, dataType : 'html', success : function (response) {
$('body').html(response);
}});