使用AJAX从数组中读取PHP输出

时间:2016-02-11 19:23:27

标签: javascript php jquery json ajax

我的PHP正在输出如下数据:

$data['full_feed'] = $sxml;
$data['other_stuff']= $new;
echo json_encode($data);

所以,在我的jQuery中,我正在做这件事。

$.ajax({
    url: 'untitled.php',
    type: 'GET',
success: function(data) {
    console.log(data['full_feed']);
});

这回来未定义。 console.log(data.full_feed)也是如此。我从PHP回来了一个有效的JSON对象,但是我不知道如何解析""解析"它正确。

2 个答案:

答案 0 :(得分:0)

解析"数据"响应jQuery.parseJSON函数的参数。然后使用parsed.full_feed值。如下所示:

$.ajax({
    url: 'untitled.php',
    type: 'GET',
success: function(data) {
    data = jQuery.parseJSON(data);
    console.log(data.full_feed);
});

答案 1 :(得分:0)

你可以像@ tilz0R那样说或者你的例子工作,你需要告诉浏览器你发送一个json响应。因此需要设置内容类型标题,如

header('Content-Type: application/json');
echo json_encode($data);

查看服务器返回的内容是console.log(typeof data)。如果它是一个字符串,你需要解析它。如果它是一个对象,它已被解析。

你也可以在你的ajax调用中输入dataType:'json'让jquery知道你除了json响应。