如果JSON响应指定了行,则会发出Javascript警报

时间:2012-06-15 09:08:43

标签: javascript json alert

我正在尝试构建一个从服务器获取JSON的应用程序,然后在JSON响应指定了行时显示javascript警报。我从服务器获得的JSON如下所示:

{
    "key": [
        {
            "IND": "406",
            "NUMBER": "9",
            "MESSAGE": "this is a test",
            "status": "ok"
        }
    ]
}

这是我用来显示提醒的代码:

function UpdateRecord(update_id) {
    var id = getUrlVars()["id"];
    jQuery.ajax({
        type: "POST",
        url: serviceURL + "test.php",
        data: 'id=' + id,
        cache: false,
        success: function(data) {
            if (data.status == 'ok') {
                alert(data.message);
            } else {
                alert("no");
            }
        }
    });
}​

但即使JSON有一行"status": "ok"

,此代码也会发出“no”警告

3 个答案:

答案 0 :(得分:3)

尝试使用if (data.key[0].status),并将alert(data.message)替换为alert(data.key[0].MESSAGE)。你必须小心大写!

答案 1 :(得分:2)

你的jSON中定义了“key”,所以它不应该是

if(data.key[0].status == "ok")

答案 2 :(得分:0)

在成功处理程序中执行console.log(data)以查看数据是什么。您会看到没有data.status,而是data.key[0].status