我想加载一个简单的json文件并显示它的内容但它不起作用,我不知道为什么:(
控制台上没有显示任何内容。
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$.getJSON('/api/?core=users&function=getJson', function(data) {
var items = [];
console.log("ok!");
$.each(data, function(key, val) {
items.push('<li id="' + key + '">' + val + '</li>');
});
$('<ul/>', {
'class': 'my-new-list',
html: items.join('')
}).appendTo('body');
});
});
</script>
</head>
<body>
<ul class="my-new-list">
<li>test</li>
</ul>
</body>
</html>
加载的JSON数据是:
{"fruit_name":"Tomato"}
你有什么想法吗?
谢谢!
答案 0 :(得分:6)
如果控制台中没有显示任何内容,则永远不会触发成功功能。
您的服务器请求返回200以外的内容(如404,500等)或者您返回的字符串无效JSON。
检查您的网络标签,查看您的请求中的内容。如果它返回200,那么您返回的字符串不是有效的JSON字符串。
在以下网址验证:jsonlint.com
答案 1 :(得分:0)
首先:您必须确保您的JSON文件(在getJSON()中被视为)可以访问且没有任何错误。
然后使用以下代码段:
$(document).ready(function(){
$.getJSON('/the/path/to/theJSON',{
format: "json"
}).done(function(data){
alert(data.fruit_name);
});
});