从php文件中获取Json

Tha*_*eem 1 php ajax jquery

我是jQuery的新手.我尝试从中获取数据时出错fileresult.php.

fileresult.php

$return_arr = array();
$row_array['status'] = 'Ok';
$row_array['message'] = 'good'
array_push($return_arr, $row_array);
echo json_encode($return_arr);
Run Code Online (Sandbox Code Playgroud)

JSON输出

[{"date":"2014-03-15","status":"ok","message":"good"}]
Run Code Online (Sandbox Code Playgroud)

get_result.js

$.post('file.php', $("form").serialize(), function(data) {
    var status = data['status'];
    alert(status);  
});
Run Code Online (Sandbox Code Playgroud)

当我提醒数据时,它显示undefined.有人请帮帮我.如何显示正确的数据.

Que*_*tin 5

你有两个问题.

您正在输出"HTML"

PHP默认声称其输出是HTML.jQuery将看到这个声明,并将其视为如此,而不是将其解析为JSON.

覆盖PHP的默认值:

header("Content-Type: application/json");
Run Code Online (Sandbox Code Playgroud)

你有一个阵列

您正在访问,data.status但您输出的顶级数据结构是一个数组,因此您需要data[0].status使用该数据.

你没有多个对象,所以(除非你打算将来添加更多),返回会更有意义

{"date":"2014-03-15","status":"ok","message":"good"}
Run Code Online (Sandbox Code Playgroud)

代替

[{"date":"2014-03-15","status":"ok","message":"good"}]
Run Code Online (Sandbox Code Playgroud)

所以删除所有要做的事情$return_arr:

echo json_encode($row_array);
Run Code Online (Sandbox Code Playgroud)