[英]Return json from php to ajax
我试图从php中获取一个json对象,然后在我的ajax中使用。
我的ajax是
$( document ).ready(function() {
var eventsListPath = "/php/eventsList.php";
$.ajax({
type: 'get',
url: eventsListPath,
data: {},
success: function(data) {
var json = JSON.parse(data);
$('#eventInformation').html(json[table]);
}
});
});
然后我的php做一些事情,但是我基本上想返回一个字符串(还有更多,但是首先使字符串工作可能会对其余部分有所帮助):
$obj->table="hey";
echo json_encode($obj, JSON_UNESCAPED_SLASHES);
但是线
$('#eventInformation').html(json[table]);
似乎只会给我一个错误:
SyntaxError:JSON.parse:JSON数据的第1行第1列出现意外字符
我究竟做错了什么?
尝试使用。 运算子,也不需要解析已经为JSON形式的JSON字串:)
$(document).ready(function () {
var eventsListPath = "/php/eventsList.php";
$.ajax({
type: 'get',
url: eventsListPath,
data: {},
success: function (data) {
$('#eventInformation').html(data.table);
}
});
});
在PHP上,确保您实例化响应数据,如下所示
$obj = new StdClass;
$obj->table="hey";
首先,使用网络监视器查看HTTP请求的结果,例如在Firefox中: https : //developer.mozilla.org/en-GB/docs/Tools/Network_Monitor
然后,尝试下面的代码让jQuery在AJAX调用中进行JSON解析:
$(document).ready(function () {
var eventsListPath = "/php/eventsList.php";
$.ajax({
type: 'get',
url: eventsListPath,
data: {},
result: "json"
success: function (dataJson) {
$('#eventInformation').html(json.table);
}
});
});
首先,您应该检查响应是否正确解析为json。 如果json数组之前存在任何数据,则javascript将引发异常。 使用网络选项中的chrome开发人员工具“响应”标签查看响应。 如果可以,请尝试以下代码。
$(document).ready(function () {
var eventsListPath = "/php/eventsList.php";
$.ajax({
method: "get",
url: eventsListPath,
dataType : "json",
data: {}, //data
success: function (data) {
$('#eventInformation').html(data.table);
}
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.