欢迎来到代码驿站!

jquery

当前位置:首页 > 网页前端 > jquery

基于Jquery的跨域传输数据(JSONP)

时间:2021-04-30 10:11:13|栏目:jquery|点击:
后端:
复制代码 代码如下:

<?php
$json_str = json_encode(array("ddd"=>"11111111"));
echo $_GET['ja'].'('.$json_str.')';
?>

前端:
复制代码 代码如下:

$.getJSON('http://www.liushan.cn/test.php?ja=?',function (json){
alert(json);
});

纯JS实现(JSONP):
复制代码 代码如下:

//server return aa({'ddd':'ddd'}) callback function name: $_GET['callback']
//author:lonely
(function(w){
function getjson(){}
getjson.prototype.set=function(url,callback,callbackname){
this.callfn=callbackname||'urlcallback';
this.url=url+"?callback="+this.callfn;
try{
eval(this.callfn+"=function(data){\n"+
"callback(data);\n"+
'delete '+this.callfn+';}');
}catch(e){return;}
this.request();
delete this.url;
}
getjson.prototype.request=function(){
var script=document.createElement("script");
script.src=this.url;
var load=false;
script.onload = script.onreadystatechange = function() {
if(this.readyState === "loaded" || this.readyState === "complete"){
load=true;
script.onload = script.onreadystatechange=null;
}
};
var head=document.getElementsByTagName("head")[0];
head.insertBefore(script,head.firstChild);
}
w.getjson=getjson;
})(window)
//使用DOME
new getjson().set("http://www.test.cn/test.php",function(data){
alert(data.ddd);
});

另一个:getScript
复制代码 代码如下:

jQuery.getScript("http://dev.jquery.com/view/trunk/plugins/color/jquery.color.js", function(){
$("#go").click(function(){
$(".block").animate( { backgroundColor: 'pink' }, 1000)
.animate( { backgroundColor: 'blue' }, 1000);
});
});//CHM帮助文件示例

上一篇:jQuery Ajax全解析

栏    目:jquery

下一篇:(function($){...})(jQuery)的意思

本文标题:基于Jquery的跨域传输数据(JSONP)

本文地址:http://www.codeinn.net/misctech/111664.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有