例如,在外部JavaScript文件中,我在一个简单的$(document).ready函数中有这个:
$.getJSON("/aTest.json", function (jsonObj) {
$("#testJSONBtn").click(function () {
var val = "";
for (var i = 0; i <= jsonObj.events.length; ++i) {
val += jsonObj.events[i].title + ", " + jsonObj.events[i].date + ", " + jsonObj.events[i].explanation + "<br/>";
}
$("#JSONOutput").append(val);
});
});
JavaScript控制台一直告诉我服务器返回404(未找到),但该文件肯定是该名称,并且正好在该路径上。所有其他资源都可以通过网站访问。我试过移动文件并重命名它,以及其他一些东西,所以我觉得这可能与WebMatrix有关,它运行的IIS版本(它是8?),还是文件扩展我正在使用(.json)。外部json文件不应该存储在扩展名为.json的文件中吗?
其他特性:
我曾经有两个同名文件,一个是.json文件,另一个是.cshtml,它们在同一个目录中。在这段时间内,上面的函数没有返回404,事实上,它根本没有返回任何内容......它什么都没做,但没有返回任何错误。
如果重要的话,所有的ID和选择器都经过五元组检查(以及之后)。
上述函数是否有问题,或者外部.js文件(或WebMatrix的IIS)是否无法访问另一个外部.json文件?
答案 0 :(得分:5)
您需要将.json文件的有效MIME类型添加到网站或目录中。 对于以下步骤
.json
)text/plain
。如果您在IIS Express上安装WebMatrix,请按照以下步骤操作