2013-02-19 37 views
1

喜的朋友我在阿賈克斯方法,像這樣的java.util.Map對象..解析的JSONObject在JavaScript或jQuery的

Map<String,List<String>> sm = new TreeMap<>(); 

    List<String> str = new ArrayList<String>(); 
    str.add("val1"); 
    str.add("val2"); 
    str.add("val3"); 
    str.add("val4"); 

    sm.put("shift1", str); 
    sm.put("shift2", str); 
    sm.put("shift3", str); 
    sm.put("shift4", str); 

    JSONObject json = new JSONObject(sm); 

    response.getWriter().print(json); 

在運行時,地圖要素將根據地圖元素我不得不產生表中增加或減少

這是Ajax調用..我不知道如何解析該Map對象並在javascript中動態生成表格。

請告訴我如何。

+0

這是甚至編譯代碼?你怎麼能將一個java類型傳遞給'JSONObject'構造函數? – 2013-02-19 09:55:27

+0

另一件事 - 每個'put'調用都會覆蓋之前的任務。這是你正在使用的實際代碼? – 2013-02-19 10:04:44

+0

雅100%它會編譯..'JSONObject'是Java類.. – Clarence 2013-02-19 10:06:34

回答

0

我只是回答你的問題。我不知道Java,也不明白你給出的細節。如果我錯了,我很抱歉,並且很好地忽略它。

爲了解析字符串對象

在jQuery的,$ .parseJSON(字符串);

在js中,JSON.parse(string);

我希望這將有助於美國謝謝。

0
var json = $.parseJSON(jsonString); 

// This one wouldn't be supported in old browsers 
json = JSON.parse(jsonString); 

此外,你可以在Java中,與application/json在Content-Type響應,然後在jQuery的AJAX您將收到已經被解析爲您的JSON。

當然,如果您專門配置jQuery AJAX調用以接收純文本或HTML或其他內容類型的響應,則不會發生這種情況。 欲瞭解更多參考,see here,在dataType設置。