动态json值存储

时间:2013-01-06 09:38:43

标签: javascript json jquery getjson

形成一个php页面我正在使用json发送一些值。

$result = mysql_query("SELECT * FROM user_info");


    $i=1;
    while($row = mysql_fetch_array($result, MYSQL_NUM)) {
        if(is_array($row) && count($row)>0) 
        {
            $res['user_name'.$i]         = $row[1];
            $res['user_email'.$i]           = $row[2];
            $res['gender'.$i]           = $row[4];
            $res['i']                   = $i;
            $i++;
        }
    }

echo json_encode($res);

我对此代码没有任何问题。但在另一个页面中,我希望获得该数据代码

    $.post(urlName, function(data) {
    var obj = jQuery.parseJSON ( data );
    $noOfUser   = obj.i;
    alert("No of user- "+$noOfUser);

    for($i=0;$i<=$noOfUser;$i++)
    {
    $user_name = obj.user_name+$i;
    $user_emai = obj.user_email+$i;
    $gender    = obj.gender+$i;

    alert("User Name- "+$user_name);
    alert("User Email- "+$user_emai);
    alert("User Gender- "+$gender);
    }
    });

但问题是,当我添加此obj.user_name+$i而非简单obj.user_name时,它无法正确检索数据,但我需要获取这些值,如何做到这一点?

1 个答案:

答案 0 :(得分:0)

您尝试执行的操作尝试获取user_name的{​​{1}}成员并附加obj的值。由于未定义$i,因此脚本失败。

这是因为在使用动态生成的密钥访问对象成员的javascript中,您必须使用user_name访问者,因此在您的情况下,以下示例应该有效。

[]