按键检索json值

时间:2017-06-07 01:08:48

标签: jquery json servlets

以下是我的ajax的成功功能:

success: function(responseJson) 
{
    var receivedData = [];

    $.each(responseJson.jsonArray, function(index) 
    {
        $.each(responseJson.jsonArray[index], function(key, value)
        {
            var point = [];

            point.push(key);
            point.push(value);
            receivedData.push(point);
        });
    });

    if(receivedData["arrayData3"] === "data3")
    {
        alert("Edit Customer profile successfully!");
    }
},

从上面的代码中,我将所有数据推送到receivedData变量,我可以通过打印变量receivedData来打印所有键和值,但是如何通过键获取特定值? receivedData["arrayData3"]将被定义为未定义。 下面是我的servlet中的代码:

JSONObject json = new JSONObject();
JSONArray array = new JSONArray();
JSONObject data =  new JSONObject();
data.put("arrayData1", "data1");
data.put("arrayData2", "data2");
data.put("arrayData3", "data3");
array.add(data);
json.put("jsonArray", array);

1 个答案:

答案 0 :(得分:0)

你把jsonarray与jsonobject混合在了一起。

实际上,resposeJson与下面的代码类似。

resposeJson = {
    jsonArray:[
        {
            arrarData1: "data1"
        },
        {
            arrarData2: "data2"
        },
        {
            arrarData3: "data3"
        },
    ]
}

所以,你可以像下面那样编写ajax代码

success: function(responseJson) 
{
var receivedData = [];

$.each(responseJson.jsonArray, function(index, elem) 
{
    receivedData.push(elem); 
});

if(receivedData["arrayData3"] === "data3")
{
    alert("Edit Customer profile successfully!");
}
},