这是尝试获取 json 文件的脚本:
jQuery(function($) {
//////////////////////HEADLINE NEWS JSON SERVER START///////////////////////////
var container = $("#headlineNews"); //cache the element
console.log("First Log message is here!")
$.getJSON("/JsonControl/Headline_News.json", function(jsonObj) {
console.log("Second Log message is here!")
var val = "";
for (var i = 0; i < jsonObj.news.length; ++i) {
val += "<div id='newsHeading'>"
+ jsonObj.news[i].heading
+ "</div><br/><div id='newsSummary'>"
+ jsonObj.news[i].summary
+ "</div><br/>";
if (jsonObj.news[i].linkText != "" && jsonObj.news[i].linkPath != "") {
val += "<a href='" + jsonObj.news[i].linkPath + "'>" + jsonObj.news[i].linkText + "</a><br/><br/>";
}
val += "<div class='entryDivider'>____________________________________________________</div>";
}
container.html(val);
});
//////////////////////HEADLINE NEWS JSON SERVER END/////////////////////////////
});
这是json文件本身:
{
"news": [
{
"heading": "Bulky Item Pick-Up to Begin May 4th, 2012 for Residential Utility Account Holders.",
"summary": "Click on the link below for more details.",
"linkText": "Bulky Item Pick-Up",
"linkPath": "/Displayable Files/City_Bulk_Pick_Up_for_e_mailing.pdf"},
{
"heading": "NOW OPEN!",
"summary": "OKMULGEE RECYCLING CENTER<br/>301 E. 3rd Street<br/>(Corner of E. 3rd St. and N. Muskogee Ave.).",
"linkText": "WHAT TO AND WHAT NOT TO RECYCLE",
"linkPath": "/Displayable Files/Recycling_Items.pdf"}
]
}
//To omit any of these options, simply leave them blank (i.e., "linkText":"").
我尝试使用 console.log,但只有第一个执行,第二个没有执行,所以我知道 $.getJSON 分支的内容根本没有执行(这意味着 $.getJSON 语句是失败,如果我理解正确的话)。但是绝对不会发生脚本错误。
此外,服务器设置为提供 json 文件,因为另一个测试站点已经很好地执行了外部 json 文件。
感觉路径在某种程度上是错误的,但我没有得到 404,我已经重新检查了这条路径,以确保它在语法上至少是正确的十几次。
如果文件的路径正确,json 文件的语法正确,并且服务器确实配置为提供 json 文件(例如,设置了 application/json MIME 类型), $.getJSON 命令怎么会失败?如果分支的其余部分不执行,是否还有其他可能,或者第二个 console.log 不会执行?
- - - - - - - - - -更新 - - - - - - - - - - - - - - -
我编辑了我的帖子以反映我(错误地)在我的 json 文件中的评论。