【发布时间】:2012-02-12 23:41:45
【问题描述】:
我需要使用 JQuery 访问一些 JSON。出于某种原因,它不起作用,并且由于 getJSON 方法静默失败,我无法弄清楚出了什么问题。我检查了 JSON Url 是否正确。谢谢!
HTML:
<html>
<head>
<script src="//code.jquery.com/jquery-1.6.4.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$.getJSON('../src/json/baseball.json', function(data) {
$("#add").html(data.baseball[0].levels[0].games[0].versus);
});
});
</script>
</head>
<body>
<p id= "add"></p>
</body>
</html>
JSON:
{"baseball":
[{
"gender":"boys",
"levels":[
{
"level": "varsity",
"games":[
{
"versus":"Fullerton",
"homeaway":"Home",
"month":"February",
"date":"27",
"year":"2012",
"troyscore":"32",
"vsscore":"41",
},
{
"versus":"Sunny Hills",
"homeaway":"Away",
"month":"March",
"date":"28",
"year":"2012",
"troyscore":"20",
"vsscore":"17",
}]
},
{
"level": "jv",
"games":[
{
"versus":"Sonora",
"homeaway":"Home",
"month":"January",
"date":"20",
"year":"2012",
"troyscore":"15",
"vsscore":"21",
},
{
"versus":"Valencia",
"homeaway":"Away",
"month":"April",
"date":"30",
"year":"2012",
"troyscore":"40",
"vsscore":"1",
}]
}]
},
{
"gender":"girls",
"levels":[
{
"level": "varsity",
"games":[
{
"versus":"Acacia",
"homeaway":"Home",
"month":"February",
"date":"27",
"year":"2012",
"troyscore":"32",
"vsscore":"41",
},
{
"versus":"LV",
"homeaway":"Away",
"month":"March",
"date":"28",
"year":"2012",
"troyscore":"20",
"vsscore":"17",
}]
},
{
"level": "jv",
"games":[
{
"versus":"Commonwealth",
"homeaway":"Home",
"month":"January",
"date":"20",
"year":"2012",
"troyscore":"15",
"vsscore":"21",
},
{
"versus":"Xishan",
"homeaway":"Away",
"month":"April",
"date":"30",
"year":"2012",
"troyscore":"40",
"vsscore":"1",
}]
}]
}]
}
【问题讨论】:
-
虽然 URL 的行为有点像文件系统路径是很常见的,但 AFAIK 并不是必需的——而且服务器可能不知道(或者,出于安全原因,可能会主动忘记)
..的意思是“父目录”。你试过绝对网址吗? -
如果你把
console.log(data)放在$("#add") ...前面,你会在控制台看到什么?