使用jQuery .post返回JSON会导致“undefined”

时间:2014-02-11 21:59:33

标签: php jquery ajax json post

在php中:

return json_encode($output);

结果如下:

[
    {
        "u_s_user": "UserName",
        "u_s_first_name": "First",
        "u_s_last_name": "Last",
        "u_s_email":"me@domain.org"
    }
]

这是jQuery:

function PopulateUserFieldsToEdit() {
    var user_num = $("#choose_user_to_edit").val();
    $.post( url, {   
        _get_user_fields : 1, 
               _user_num : user_num, },
        function(data) {
            alert(data.u_s_first_name);
            $("#user_username").val(data.u_s_user);
            $("#user_firstname").val(data.u_s_first_name);
            $("#user_lastname").val(data.u_s_last_name);
            $("#user_email").val(data.u_s_email);
        }, "json" );
}

当我alert(data.u_s_email)时,我得到undefined

我在这里做错了什么?

1 个答案:

答案 0 :(得分:3)

我相信你想要data[0].u_s_user而不是data.u_s_user

(同样地,使用data[0]而不仅仅是data预先添加所有其他密钥