AJAX:JSON.parse无法获得价值?

时间:2015-02-03 13:51:38

标签: javascript ajax json

我有这样的代码

$.post('data.check.php', {NKI: v_NKI}, function(cek_NKI) {
    var cek_NKI=JSON.parse(cek_NKI);

    $.post('data.check.php', {id: id_ang}, function(cek_NKI_update) {
        var cek_NKI_update=JSON.parse(cek_NKI_update);  <-- why this code not running and var cek_NKI_update still not fill up ?? :(
        if(cek_NKI_update.NKI_before == v_NKI){
            blablabla;
        }
    });

    if(cek_NKI.NKI_exist){
        window.alert('NKI is exist!');
    } else {
        blablabla;
    }

});

data.check.php

if ($_POST['id'])
{
    $id_ang = $_POST['id'];
    $query = mysql_query("select * from tb_anggota WHERE id_ang='$id_ang'");
    $data = mysql_fetch_array($query);

    $NKI = mysql_real_escape_string($_POST['NKI']);
    $query = mysql_query("select * from tb_ang WHERE NKI='$NKI'");

    $NKI_exist = mysql_num_rows($query); //records count
    echo json_encode(array('NKI_exist'=> $NKI_exist, 'NKI_before'=> $data['NKI']));
}

我的问题是有些东西让我的代码卡住了一些行代码没有运行..但我不知道为什么因为我的编辑器没有显示警告而且我认为我的逻辑没有错...

也许有人知道?感谢

1 个答案:

答案 0 :(得分:0)

您执行第一篇文章:

$.post('data.check.php', {NKI: v_NKI}, function(cek_NKI){

和你一样:NKI喜欢POST数据。

if($_POST['id'])为false,您的PHP返回JSON字符串(我不知道如何),并在您执行第二个请求后:

$.post('data.check.php', {id: id_ang}, function(cek_NKI_update) {

但是在这里你只需要id(比如POST数据),但是在你的PHP代码中你试图得到:

$_POST['NKI']

但你还没有在第二个$.post内发送,似乎null

尝试将您的secondo发布呼叫更改为:

$.post('data.check.php', {id: id_ang,NKI: v_NKI}, function(cek_NKI_update) {