Discuz模板|Discuz插件|Discuz教程|Discuz素材免费下载

 找回密码
 立即注册

QQ登录

只需一步,快速开始

广告
温馨提示:本站所有DZ相关模板、插件、教程(包括DZ应用中心已下架插件、模板)所有用户可全部免费下载,无任何收费模式(不包括VIP版块非DZ资源,VIP版块需购买会员组方可下载),如本站没有您需要的插件或模板,请自行前往淘宝互站网送吗网等第三方站点搜索相关插件或模板进行低价格购买下载本站非常不建议用户浪费金钱前往DZ应用中心购买。

用Jquery的getJSON实现两网站之间跨域读取

[复制链接]
tuzi 发表于 2015-8-8 23:40:13 | 显示全部楼层 |阅读模式
温馨提醒:禁止内容附带广告图片、二维码图片,否则将在不通知情况下永久禁言账号!
欢迎加入兔源码站长交流群,您的加入是我们前行的动力!

DZ站长建站交流群:493651246

[ 温馨提示:点击上方群文字,可快速加入QQ群 ]


这个问题跟ECSHOP的关系不是很直接,一般用户用不到。6 J: d; j; V7 g( }% l3 E+ {1 Q) y7 G; S
6 M+ \* P/ a7 n8 k& l. M
只是对于高级用户可能会有点帮助,举例说明:4 l7 s+ K, l  o3 L

6 `* r  n9 y- h& m6 t1 D7 v比方两个ECSHOP网站拥有不同域名,位于不同服务器上,双方之间又不能直连数据库的前提下,两个网站之间如果想共享订单数据。
6 r; B6 T9 u8 B0 Z/ S' x  _2 q那么也许可以使用 $.getJSON 来解决。
/ J- o4 S" Z$ }5 r& n& i; [2 M, m. Y  c0 p, k2 v
test.php,在 www.eshop.com  根目录中% u& @, L+ U7 h( `: G- k
test.php代码:
  G4 D3 |, s  a: }8 e- G1 D! ePHP代码
" @8 G7 }' E4 [* O3 g- {% t0 v
<?php   
9 Q. L( j# h" v$ s    $dal=$_GET['callback'];   
+ b& M1 `+ U' U; Z    $arr=array("name"=>"4nail", "age"=>20);   
7 B, X8 P7 X3 X1 v% L* @    $jarr=json_encode($arr);   
( q. }  X! a7 L. L, y    echo $dal.'('.$jarr,')';   ! p3 N- K! D) Y5 Q2 ^8 K7 w% J: N
?>

6 H# Y4 ~4 T) \0 r# Wtest.html在 www.ecshop120.com 根目录下
test.html代码如下:
Html代码 / Z3 P& ]9 |: `  j
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   1 t% e$ Q3 h5 j' ^) U* H
<html xmlns="http://www.w3.org/1999/xhtml">   - w  ^5 F7 N+ j$ p0 m' j! J- ~
<head>   8 I5 S# H5 d* C4 r! [- O% E
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />   4 v& |- |: A3 T7 y
<title>无标题文档</title>   & q; c$ q, p* |: z% K
<script language="javascript" type="text/javascript" src="Scripts/jquery.min.js"></script>   
+ m0 G! {( c! J4 f7 Z<script type="text/javascript">   
5 n. \7 L. M/ U$ ~  u5 F0 ^; s    $(function(){   . |3 n/ C3 G8 X6 k2 S( @" {* Y
        $("#test").click(function(){   ( E5 r: D. i- m  [5 u- _+ l* k
            $.getJSON("http://www.ecshop.com/test.php?callback=?",function(data){   
4 i- ?" Q. {8 D) z                alert(data.name);                              
% ]0 M4 w" @& x# U            });                     
8 H: D) Z7 U4 D4 ^5 w" d  \' Q        });   , ~+ e2 [: U/ Q& O8 M
    });   
8 a3 e' s; A' r! g# w9 i</script>   
1 s2 X7 T9 F! I$ a9 ?( s</head>   
, C$ t# ]& H; [4 L+ ]( @: m% `   
! ^+ i" R; V3 Y) O<body>   ! f. i, d2 P7 C7 }
<div style="width:100px;height:100px;background-color:#F00" id="test">点击跨域加载</div>  . v; r8 A1 e9 V' b2 @
</body>   
: O7 B6 p5 i3 l" r; b</html>

+ ^) p, x0 X& y

( g1 C: l# Y% l
" _! @2 x# T7 t! q. m关键的一点在于 在$.getJSON()中的url参数末尾要加个callback=?     
% T! a# X+ l5 \' B8 \不一定非叫 callback,也可以自定义其他的名称,在test.php文件中,改相应的名称,就ok啦!0 ]2 c- {( s3 c8 T4 U
在输出 json 数据时,必须要加上 $_GET['callback'] 和两个括号,就像下面这样
# T, w7 w' d8 {4 |' N: Kecho $dal.'('.$jarr,')';z
3 r# z" j$ P5 q' S; v( Q& w* |

版权声明
1、转摘或引用本站内容资源须注明原网址,并标明本站网址(兔源码www.tuyuanma.com);
2、对于转摘或引用本站内容资源而引起的民事纠纷、行政处罚或其他损失,本站不承担责任;
3、对于不遵守本声明或其他违法、恶意使用本站内容者,本站保留其追究法律责任的权利。




自动排版 | 高级模式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广告
493651246站长邮箱:tuyuanma@qq.com 站长QQ:3197813386

© 2001-2013 本站内容皆来自互联网及用户分享,如需删除请提供软著或商标证书。

快速回复 返回顶部 返回列表