我有一个很好的工作本地脚本:
$.getJSON("jsonfile.js",function(item) {
$.each(item.terra_nova_feed, function(i,item) {
// functions and varibles//
});
});
哪个在当地很好用。当JSON文件移动到另一个域时......没有。 我知道我应该使用getScript来引入JSON文件。但是,如何将该数据提取到现有脚本中?
答案 0 :(得分:2)
尝试$.ajax()
功能并使用crossDomain:true
参数。它本质上使用JSONP(填充JSON),它将数据包装在回调中。
$.ajax({
url: "http://www.otherdomain.com/jsonfile.js",
crossDomain:true,
type:'get',
dataType:'json',
success: function(data) {
$.each(data.terra_nova_feed, function(i,data) {
// functions and varibles//
});
}
});
答案 1 :(得分:1)
答案 2 :(得分:0)
问题是$ .getJson()通常不能与jsonp一起使用(这意味着它不能跨域工作,除非一些特殊情况,比如服务器的显式支持传递它)但在你的情况下我认为你应该使用$ .ajax()并将crossDomain选项设置为true。