最终解决方案: 我的bin
文件的格式错误比我在问题中包含的代码段更深入。现在一切正常。非常感谢评论中的每个人,我将@ TWLATL的答案标记为正确,因为它是一个格式良好的函数解决方案,我可以在以后的项目中使用。
我正在尝试从.json
(data.json
目录中)访问我的script.js
文件,但它似乎根本没有运行。在我处理错误之前,我没有表明该函数已经运行。感谢评论,我将root
替换为.error
,但我仍然无法弄清楚它失败的原因。
的index.html
.fail
的script.js
<body>
<h1>JSON Render</h1>
<div id="fileViewer"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="script.js"></script>
</body>
data.json(样本)
$.getJSON('data.json', function(data) {
console.log('json grabbed')
console.log(data);
})
.fail(function(data) {
console.log("GetJSON Error!");
console.log(data);
});
$.ajax({
url: 'data.json',
dataType: 'json',
success: function( data ) {
console.log( "SUCCESS: " );
console.log( data );
},
error: function( data ) {
console.log( "AJAX ERROR: " );
console.log( data );
}
});
我一直在寻找Stack Overflow,我找不到任何解决方案似乎解决了我的问题。救命啊!
编辑:将jQuery CDN添加到我的{
"children": [
{
"name": "Main Folder",
"type": "folder"
},
{
"name": "Private folder",
"type": "folder"
}
]
}
。它就在那里。我只是忘了把它放在问题中。
编辑2:更新了script.js以反映返回以下屏幕截图的代码。 (屏幕截图在对象的中间切断。如果对象的上下文实际上是相关的,我可以包含更多。)
编辑3:新的AJAX错误处理: 新的ajax功能:
index.html
答案 0 :(得分:2)
使用稍微修改过的代码版本,我让它返回JSON就好了:
http://plnkr.co/edit/DMLyJa1Quj7ofszn5Y7o?p=info
$(document).ready(function() {
console.log("ready!");
var items;
$.getJSON('data.json', function(data) {
console.log('json grabbed');
})
.done(function(data) {
items = data.children;
console.log(items);
})
.fail(function(data) {
console.log("Error!");
});
}); // close document.ready
&#13;
Jquery现在使用.done作为成功方法。在那个块中,只需将data.children项分配给变量,就可以了。
答案 1 :(得分:0)
感谢评论中的每个人,我能够解决问题。它实际上是一个JSON格式问题。我使用此网站查找问题所在:https://jsonformatter.curiousconcept.com/