我有一个设置,我使用ajax从数据库中检索数据。现在我正试图确定从php文件发送一个数组到运行我的ajax的javascript。
目前我正在使用json编码从php文件中发送数据
echo json_encode($send_array);
然后我尝试将其作为javascript端的数组检索,并在响应文本上使用json解析。
JSON.parse(xhttp.responseText);
这就是它变得奇怪的地方。如果我只是打印出来或显示xhttp.responseText,我会得到我的数组的文本表示。
[1,2,3,4,5,6,7]
但如果我在其上运行JSON.parse,我会收到意外的语法错误'<'。
进一步挖掘,如果我做xhttp.responseText [0],它会返回'<'。
进一步测试,我发现xhttp.responseText [4]返回' @'这是我的php文件最顶部的注释中的第四个字符。
我需要帮助弄清楚为什么xhttp.responseText以正确的格式返回文本,但是尝试仅检索部分responseText或尝试解析它而不是返回我的php文件的顶部。
答案 0 :(得分:0)
现在解决了。原来问题是我的php文件在顶部有html样式的评论。这些被发送以及回复的数据。