1.(仅支持IEs)
jQuery.support.cors=true //在使用时添加,表示支持跨域
2.jsonp
$.ajax({
url: 'http://www.xxxx.net/', // 跨域URL
type: 'GET',
dataType: 'jsonp',
jsonp: 'jsoncallback', //在一个jsonp请求中重写回调函数的名字。这个值用来替代在"callback=?"这种GET或POST请求中URL参数里的"callback"部分,比如{jsonp:'onJsonPLoad'}会导致将"onJsonPLoad=?"传给服务器。
jsonpCallback:"callbackFn",//为jsonp请求指定一个回调函数名。这个值将用来取代jQuery自动生成的随机函数名
data: 'id=10', //请求数据
timeout: 5000, //一般不需要指定
beforeSend: function(){
//jsonp 方式此方法不被触发。原因可能是dataType如果指定为jsonp的话,就已经不是ajax事件了
},
success: function(json) {
//客户端jquery预先定义好的callback函数,成功获取跨域服务器上的json数据后,会动态执行这个callback函数
//do something...
},
complete: function(XMLHttpRequest, textStatus){
},
error: function(xhr){
//jsonp 方式此方法不被触发
//请求出错处理
alert("请求出错(请检查相关度网络状况.)");
}
});