首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法将json数组从PHP传递到JQuery

问无法将json数组从PHP传递到JQuery
EN

Stack Overflow用户
提问于 2015-09-29 22:22:16
回答 2查看 62关注 0票数 0

我一直试图将一个简单的数组从PHP传递到JQuery。以下是HTML/JS中的相关函数:

代码语言:javascript
复制
function myQuery() {

 var xmlhttp = new XMLHttpRequest();
 var url = "sandbox.php";

 xmlhttp.onreadystatechange=function() {
  if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
   myFunc(xmlhttp.responseText);
  }
 }
 xmlhttp.open("GET", url, true);
 xmlhttp.send();

}

function myFunc(response) {
 var arr = JSON.parse(response);
 document.getElementById("demco").innerHTML = arr[0];
}

对于PHP,我尝试过:

代码语言:javascript
复制
<?php
 $arr = [4,7,2];
 echo json_encode($arr);
?>

以及:

代码语言:javascript
复制
<?php
 $arr = array(4,7,2);
 echo json_encode($arr);
?>

根据我的调试器,它每次都在JSON.parse(响应)上失败。这里的代码有什么问题?我尝试通过http://json.parser.online.fr/运行数组4,7,2,没有问题。我快疯了,帮帮我吧!

编辑:

在第X行的控制台:解析PHP中的错误,其中X是包含:$arr =4,7,2的行;未解析的异常: SyntaxError: JSON.parse:无法解析值:

在myFunc(响应)中http://..中的第2列Y行引发的错误。var arr =JSON.parse(响应);在http://localhost/sandbox.html:myFunc(xmlhttp.responseText)中从Z行调用,列4 in ();

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-10-03 00:37:55

我在PHP文件的顶部有一个doctype标记,这个标记是用JSON传递的,并且正在搞砸解析。

票数 0
EN

Stack Overflow用户

发布于 2015-10-01 15:26:24

请将输出页头设置为application/json,以清楚地完成此操作。它只需要在JSON代码中输出。

代码语言:javascript
复制
<?php
header('Content-Type:application/json');
$arr = array(4,7,2);
echo json_encode($arr);

这将使纯JSON输出,它将很容易被Javascript读取

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32854736

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档