我有一个Java servlet,它可以执行以下操作:
JSONObject jsonObject = new JSONObject();
JSONArray jsonArray = new JSONArray();
jsonObject.put("Status", status);
jsonObject.put("isActive", isActive);
jsonArray.add(jsonObject);
response.getWriter().write(jsonArray.toString());
//Now I have for loops here.
JSONArray jsonArray2 = new JSONArray();
for(int i=0;i<list.size();i++){
DTO dtost = list.get(i);
JSONObject jsonObj = new JSONObject();
jsonObj.put("Label",dtost.getLabel());
jsonObj.put("UNID",dtost.getUNID());
jsonArray2.add(jsonObj);
}
response.getWriter().write(jsonArray2.toString());
我正在获取此 JSON 数据,并想知道如何使其成为正确的 JSON 格式,并使用 Javascript 访问其中的值。
[{"Status":"Passed","isActive":"No"}] [{"Label":"MembershipCard","UNID":"01"},{"Label":"LoyaltyCard","UNID":"02"}]
我正在尝试以下 Javascript 代码片段,但我没有检索任何代码片段。
success: function(data) {
alert(data[0].Status); // Nothing
}
谢谢。
上面提到的是一个无效的JSON。 但是,如果我们将 JSON 修改为此 "[[{"状态":"已通过","是活动":"否"}], [{"标签":"会员卡","UNID":"01"},{"标签":"忠诚卡","UNID":"02"}]]">那么它是一个有效的 JSON。
因此,要访问上述数据的状态参数,如下所示:-
success: function(data){
alert(data[0][0].Status);
}
重构 Java 代码以生成有效的 json 对象。{"first":[{"Status":"Passed","isActive":"No"}],"second":[{"Label":"MembershipCard","UNID":"01"},{"Label":"LoyaltyCard","UNID":"02"}]}
JSONObject output= new JSONObject();
JSONObject jsonObject = new JSONObject();
JSONArray jsonArray = new JSONArray();
jsonObject.put("Status", status);
jsonObject.put("isActive", isActive);
jsonArray.add(jsonObject);
output.put("first", jsonArray);
//Now I have for loops here.
JSONArray jsonArray2 = new JSONArray();
for(int i=0;i<list.size();i++){
DTO dtost = list.get(i);
JSONObject jsonObj = new JSONObject();
jsonObj.put("Label",dtost.getLabel());
jsonObj.put("UNID",dtost.getUNID());
jsonArray2.add(jsonObj);
}
output.put("second", jsonArray2);
response.getWriter().write(output.toString());