后台dwr返回一个string类型的json格式数据,前台js如何读取?

我在dwr对应的方法里是这样封装的
public String findByCallPerson() {
List l = this.getIcps().findByCallPerson();
JSONArray jsonArray = new JSONArray();
try {
for (Object o : l) {
System.out.println("haohaoahoa");
JSONObject jo = new JSONObject();
Callperson cp = (Callperson) o;
jo.put("callId", cp.getCallId());
jo.put("callDescription", cp.getCallDescription());
jo.put("callNum", cp.getCallNum());
jo.put("callDate", cp.getCallDate());
jsonArray.put(jo);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println(e.getMessage());
}
System.out.println(jsonArray);
return jsonArray.toString();
}
......打印输出的是
:[{"callId":1,"callDate":2011-04-23 00:00:00.0,"callNum":31,"callDescription":"qqq?33?????,????,???31??????"}]
这种格式的string类型json格式数据..那么前台用了一个js的回调函数.接收..那请问..js怎么读取呢?

第1个回答  推荐于2016-04-20
var json = eval("("+returnData+")");
然后就可以直接用json.callDate这样了本回答被提问者采纳
第2个回答  2011-05-05
如果data是回传的数据
for(int i=0;i<data.size();i++){
JSONObject object=(JSONObject)data.get(i);
String callldString=object.getString("callld");//获得第一个json数据callld的值
。。。。
}
第3个回答  2011-04-25
eval() 函数转换
第4个回答  2011-04-27
javascript读取json是最方便的,如:
var myJSONObject = {"bindings":[{"callId":1,"callDate":2011-04-23 00:00:00.0,"callNum":31,"callDescription":"qqq?33?????,????,???31??????"}]
那么你可以直接通过 myJSONObject.bindings[0].callId取得1