我使用ajax使用
读取我的json数据的http:xxx.myserver.com/myfolder/example.json
$.ajax({
url:"http:xxx.myserver.com/myfolder/example.json",
dataType:"json",
success:function(data, status) {
alert("success"+data+":::"+status);
},
error:function(request, status, error) {
alert("Error:"+JSON.stringify(request)+":::"+status+"::"+error);
},
});
为此,我得到如下的输出
错误:{ “readyState的”:0 “responseText的”: “”, “状态”:0 “状态文本”: “错误”} :::错误::
我用google搜索解决方案,如果我替换
,有些人会说将json替换为jsonpdataType:json to dataType:jsonp
我的输出就像
错误{“readyState”:4,“status”:200,“statusText”:“success”} ::: parsererror ::错误:jQuery110107852220840286463_1387290139272未被调用
根本没有进入成功功能。
请有人为我提供解决方案。提前谢谢。
答案 0 :(得分:1)
我解决了我的问题。
您的json应采用以下格式例如: jsonCallback({"sites":[{"siteName": "JQUERY4U","domainName": "http://www.jquery4u.com"},{"siteName": "BLOGOOLA","domainName": "http://www.blogoola.com"},{"siteName": "PHPSCRIPTS4U","domainName": "http://www.phpscripts4u.com"}]});
我将回复更改为 jsonCallBack
$.ajax({
url:"http:xxx.myserver.com/myfolder/example.json?callback=?",
dataType:"jsonp",
async: false,
jsonpCallback: 'jsonCallback',
contentType:"application/json",
success:function(data, status) {
alert("success"+JSON.stringify(data));
},
error:function(request, status, error) {
alert("Error:"+JSON.stringify(request)+":::"+status+"::"+error);
},
});
我进入成功功能并获得我的json响应。谢谢你的帮助。这是因为跨域问题。