php+ajax+jquery实现jsonp跨域
我们有这么个html文件test.html:
代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Untitled Page</title>
<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
<script type="text/javascript">
jQuery(document).ready(function(){
$.ajax({
type: "GET",
async: false,
url:"test.php",
dataType: "jsonp",
jsonp: "callback",//传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback)
jsonpCallback:"flightHandler",//自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名,也可以写"?",jQuery会自动为你处理数据
success: function(json){
alert('您查询到航班信息:票价: ' + json.price + ' 元,余票: ' + json.tickets + ' 张。回调函数名为: '+json.func);
},
error: function(){
alert("fail");
}
});
});
</script>
</head>
<body>
</body>
</html>
然后,你可以再找个另外一个域名的web目录,将文件test.php:
<?php
$callback = $_GET["callback"];
$a = array(
'code'=>'CA1998',
'price'=>'6000',
'tickets'=>20,
'func'=>$callback,
);
$result = json_encode($a);
echo "flightHandler($result)";
exit;
放到这个目录下面去。这样就可以测试了。
直接在浏览器访问test.html.就可以看到效果了。
最新文章
- 输入URL到展现页面的全过程
- NOT IN查询效率低,用它的等效写法提高效率。
- 2013年最新流行的响应式 WordPress 主题【下篇】
- restController与Controller-待续
- MySQL中快速复制数据表方法汇总
- (Python )运算符
- 让人爱不释手的13套精美 Web 应用程序图标素材(转)
- (整理)FORM:Oracle EBS客制化Form的菜单栏用法说明
- Codevs 2449 骑士精神 2005年省队选拔赛四川
- Chrome 中的彩蛋——T-Rex
- [Asp.Net]状态管理(Session、Application、Cache、Cookie 、Viewstate、隐藏域 、查询字符串)
- 再造轮子之网易彩票-第一季(IOS 篇 by sixleaves)
- Java基础:容器
- window 7 改变窗口颜色
- rabbitmq安装Management Plugin
- BIRT实现组内跨行计算
- DotNetCore 定时服务 HangFire
- shell之case
- 解决C#中调用WCF方法报错:远程服务器返回错误 (404) 未找到
- scrapy xpath、正则表达式、css选择器
热门文章
- noip模拟赛 无题
- stl lower_bound()和up_bound()
- SpringBoot入门系列~Spring-Data-JPA自动建表
- 洛谷P2888 [USACO07NOV]牛栏Cow Hurdles
- C#高级编程第9版 第一章 .NET体系结构 读后笔记
- 洛谷——P1832 A+B Problem(再升级)
- SQL Server中迁移数据的几种方法
- Android GIS开发系列-- 入门季(8) Json与Geometry的相互转换
- Jquery的运用
- nyist oj 19 擅长排列的小明(dfs搜索+STL)