ajax跨域请求回调代码,ajax跨域请求,自定义回调方法名defined。我就呵呵了。

之前说了,ajax的jsonp跨域请求,返回的是json格式。用了雅虎的YQL才能正确访问,-----$.ajax跨域,服务器返回的是json格式。

经过后台的不懈努力,现在跨域请求回来的是jsonp格式了。

这次也没啥重要的事,只是给自己范的错误,留个念想。

页面中有$(function(){})了,所以我把所有的js代码都放到这个里面了,

所以出现了这样的报错

f96426361c44?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

后台返回的数据格式

f96426361c44?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

successCallback是自定义的回调方法名,明明下面我已经有这个方法了。但是还是报没找到的错误,让我百思不得姐。

解决方法:

后来我们老大说了一句把 successCallback()方法放到$(function(){})外面去,居然神奇般的正常了。

$(function(){

//生成数据格式。请求的数据隐藏了哈。包括网址。

var jn = {

'successCall':"successCall",

};

//进行ajax请求

$.ajax({

type:"get", //请求方式

async:false, //是否异步

url:"http://api.xxxx.com/Public/registerForCRMbyExtenduid",

dataType:"jsonp", //跨域json请求一定是jsonp

data: jn, // 参数

success: function (data) {}

});

})

//请求回调方法

function successCallback(data) {

if(data.success == "false"){

$("#warning").fadeIn();

$('#warning strong').html(data.message);

}else if(data.success == "true"){

$("#success").fadeIn();

$('#success strong').html(data.message);

}

}