getJSON不执行回调函数
<?php header('Content-Type: text/json'); $a = array( 'code'=>'CA1998', 'price'=>'6000', 'tickets'=>'20', ); $result = json_encode($a); //echo "aa($result)"; echo $result; exit; ?><html> <head> <meta http-equiv="Content-type" content="text/html; charset=utf-8"> <script type="text/javascript" charset="utf-8" src="http://202.198.133.190/andrew2/jquery-1.7.2.min.js"></script> <script type="text/javascript" charset="utf-8"> function hey(){ alert("hello"); $.getJSON("http://202.198.133.190/andrew2/jsonp.php?callback=?",function(data){ document.write(data.code); }); } </script> </head> <body> <div class="main" style="margin:0 auto"><input type="button" value="点击返回json" onclick="hey()"></div> </body> </html>为什么$.getJSON后面的函数调用不了,刚接触不了解,求教!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
你这是JSONP,具体方法请参照下面
<?php
$json = json_encode(array('code'=>'CA1998', 'price'=>'6000','tickets'=>'20'));
exit($_GET['callback'].'('.$json.')');
?>
$.getJSON('http://202.198.133.190/andrew2/jsonp.php?callback=?',
function(data){
alert(data.code);
},'JSONP');
来自好为博客
直觉:你的返回值不是json格式的。
$.getJSON("http://202.198.133.190/andrew2/jsonp.php?callback=?",function(data){
跨域安全问题
你也许需要设置一下你的jquery不使用异步:
$.ajaxSettings.async = false;
第一次发问题,有点乱。。上面1-12行的是PHP 后面13-29的是HTML
<pre class="brush:html; toolbar: true; auto-links: false;">这个不知道怎么添加上的,不是我代码里的