jQuery使用JSONP实现跨域获取数据的三种方法详解
本文实例讲述了jQuery使用JSONP实现跨域获取数据的三种方法。分享给大家供大家参考,具体如下:
第一种方法是在ajax函数中设置dataType为'jsonp'
$.ajax({
dataType:'jsonp',
url:'http://www.a.com/user?id=123',
success:function(data){
//处理data数据
}
});
第二种方法是利用getJSON来实现,只要在地址中加上callback=?参数即可
$.getJSON('http://www.a.com/user?id=123&callback=?',function(data){
//处理data数据
});
第三种方法是使用getScript方法
//此时也可以在函数外定义foo方法
functionfoo(data){
//处理data数据
}
$.getScript('http://www.a.com/user?id=123&callback=foo');
实例演练:
index.html
jsonp
jsonp.php
$data["age"]=$_GET['age'];
$data["name"]=$_GET['name'];
$data["statusCode"]="200";
$data["message"]="成功";
$tmp=json_encode($data);//json数据
echo$callback.'('.$tmp.')';//返回格式,必需
?>
PS:关于json操作,这里再为大家推荐几款比较实用的json在线工具供大家参考使用:
在线
JSON在线格式化工具:
http://tools.jb51.net/code/jsonformat
在线XML/