如何从jquery中的json_encode访问数组元素?

时间:2016-11-17 10:16:06

标签: jquery

Process.php

<?php
    $myArray= array("John", "Rita");
    echo json_encode($myArray);
?>

myJquery.js

$.post('Process.php', $(this).serialize(), function(data) {
    alert(data); // output is: ["John", "Rita"]
    alert(typeof(data)); // output is:  string
    alert(data.length);// output is: 19
    alert(data[0]); // output is:  [           //How can I get John here?

    var person = ["John", "Rita"]; 
    alert(typeof(person)); // output is:  object
    alert(person.length);// output is:  2
    alert(person[0]);// output is:  John
}).fail(function() {
    alert( "Some Problem Occured");
});

对于jquery数组,我可以轻松访问数组元素,如上所示。但是对于jquery中json_encode获取的数组,我无法访问数组elemts。请指导我在Jquery文件中需要哪些更正?

3 个答案:

答案 0 :(得分:1)

您可以使用dsquery user -limit 0 | dsget user JSON.parse(data)从字符串创建JSON对象。

或者您可以向$.parseJSON(data)添加参数告诉它,响应将是一个json对象。

$.post();

答案 1 :(得分:0)

您应该使用$.post('Process.php', $(this).serialize(), function(data){ }, 'json') // <--- here you can add json .fail(function() {alert( "Some Problem Occured" );});

示例:

jQuery.parseJSON()

答案 2 :(得分:0)

像这样使用JSON Parse

$.post('Process.php', $(this).serialize(), function(data){
var data= JSON.parse(data);
alert(data[0]);
}