getJSON跨域SyntaxError问题分析

前端之家收集整理的这篇文章主要介绍了getJSON跨域SyntaxError问题分析前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

昨天写一个功能:点击手机验证的同时获取json端的数据。

javascript代码如下:

PHP?mobile="+mobile+"&format=json&jsoncallback=?",function(data){ if (data.succ == 1) { var html = ""; $(".r_m").append(html); } }); });

user.PHP代码如下:

PHP;"> '石家庄','cityid' =>'1','community' =>'紫晶悦城','communityid'=>'1' ); $sucess = 1; $return = array( 'succ' =>$sucess,'data' => $user ); }else { $sucess = 2; $return = array( 'succ' =>$sucess ); } echo json_encode($return); } ?>

相应如下:

问题出来了:

在火狐浏览器中: SyntaxError: missing ; before statement

解决方法如下:

PHP;"> header("Access-Control-Allow-Origin:http:www.test.com"); $b = json_encode($return); echo "{$_GET['jsoncallback']}({$b})"; exit;

最后完整代码

PHP;"> '石家庄','data' => $user ); }else { $sucess = 2; $return = array( 'succ' =>$sucess ); } $b = json_encode($return); echo "{$_GET['jsoncallback']}({$b})"; exit; } ?>

如果在 PHP 中少了 header("Access-Control-Allow-Origin:http:www.test.com"); 代码,则会出现

XMLHttpRequest cannot load ''. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin ' ' is therefore not allowed access. 如果少了 echo "{$_GET['jsoncallback']}({$b})"; 代码

在谷歌浏览器中:Uncaught SyntaxError: Unexpected token : 在火狐浏览器中:SyntaxError: missing ; before statement

猜你在找的PHP相关文章