如何访问从jQuery .post返回的JSON数据?

时间:2012-03-08 20:49:14

标签: jquery

我有一个简单的jQuery .post调用需要处理返回的数据,尽管还有其他类似的帖子,但我似乎无法正确理解语法。

这是我的jquery电话:

$.post("fetchAlleles.php", {mndx: mndx, sndx: sndx},
function(result) {
  $('#allele1').text(result[0]);
  $('#allele2').text(result[1]);
}, "json");

以下是名为的PHP代码:

    $mndx = $_POST['mndx'];
    $sndx = $_POST['sndx'];

    $dbconnect = pg_pconnect("host=".$hostname." user=".$dbuser." dbname=".$dbname);    
    if (!$dbconnect)    {
        showerror(0,"Failed to connect to database",'fetchAlleles',16,"username=".$dbuser.", dbname=".$dbname);
        exit;
    }
    $sql = "SELECT allele1, allele2 FROM geno.genotypes WHERE markers_id=".$mndx." AND gsamples_id=".$sndx;

    $fetchresult = pg_exec($dbconnect, $sql);
    if ($fetchresult) {
        $arr = pg_fetch_array($fetchresult, 0, PGSQL_NUM);
    } else {
        echo "(25) Failed to retrieve results.<BR>SQL: ".$sql."</br>";
    }

    echo json_encode($arr);

现在,我知道php工作正常,因为我可以在Firebug中看到它返回所需的数据。我只是没有看到如何使用success函数访问它。我想将返回数据分配给两个元素id allele1和allele2的值。

我知道我很接近,但是找不到合适的例子,或者破译了jquery文档。任何帮助将不胜感激!

- rixter

编辑1:这是答案:

$(“#allele1”)。get(0).value = result [0]; $(“#allele2”)。get(0).value = result [1];

来自Simanchal Pattanaik(在另一个问题中找到)

回答了我的问题......感谢Simanchal!

1 个答案:

答案 0 :(得分:0)

javascript中的Json对象将匹配php返回的任何Json。

如果要查看结构,请观察小提琴流量并单击JSON检查器选项卡。