我正在尝试异步加载远程json文件。我花了很长时间试图调试我期望工作的功能。我还是比较新的JS,并且想了解为什么会发生这种情况。
我期望工作的功能返回undefined
。
$.ajax({
dataType: 'json',
url: $url
})
.done(function(data) {
console.log( data );
});
此函数返回预期的json对象
$.getJSON( $url, function( data ) {
console.log(data);
});
我认为这些功能是等效的。这里发生了什么?
答案 0 :(得分:0)
您在ajax方法中设置了错误的属性。 type应该是GET,POST等,但你要将它设置为json。
“type是方法的别名。如果您使用的是1.9.0之前的jQuery版本,则应该使用type。”
为了使其正确,您需要将dataType设置为'json',并且所有内容都应该落实到位。您可以在jQuery Docs site
上阅读有关ajax API的更多信息答案 1 :(得分:0)
试试这个
Tracking Id