我有一个 JSONP URL,它正在提取数据并刚刚切换到本地 JSON 文件,现在我收到错误。我不明白为什么它不能使用本地 JSON 文件?
<script type="text/javascript">
$.ajax({
type : 'GET',
dataType : 'json',
url: '/json/topics.json',
success : function(data) {
console.log(data);
var topics = [];
$.each(data.results, function(index, obj){
topics.push({
username: obj.TopicName,
mentions: obj.LastHourCount,
totalcount: obj.TotalCount,
daycount: obj.Last24HoursCount
});
});
$('#leader').tmpl(topics).appendTo('#top3');
}
});
</script>
在控制台中,由于某种原因,它说 AJAX 是一个匿名函数? 有什么建议吗?
最佳答案
$.ajax
是异步的,看起来您正在尝试在页面加载时更改 DOM,添加
async: false,
到您的$.ajax
参数。请注意,这可能会减慢页面加载速度。
示例:
$.ajax({
type : 'GET',
dataType : 'json',
async: false,
// rest of your code
如果您使用本地文件而不是通过网络服务器,并且获取 Access-Control-Allow-Origin 不允许 Origin null
错误,请参阅这篇文章:
关于jquery - AJAX GET 无法处理本地 JSON 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9066335/