2015-07-20 80 views
1

在java中,我有HashMap的将java映射转换为javascript映射并循环以获取键/值?

Map<String , List<Employee>> employeeMap = new HashMap<String , List<Employee>>(); 
employeeMap.put(1, new Employee()); 
........ 

我在请求属性将它添加

现在在JavaScript中,我需要遍历过的地图,得到键和值

这里是我的尝试

方法1: -

var empMap = '${employeeMap}'; 
//here is the example value of map in javascript which i see while debugging 
//var empMap = {emp1_100=[[email protected]], emp2... 

for (var key in empMap) { 
    alert(key + ': ' + empMap[key]); 
} 

但越来越语法错误

SyntaxError: missing : after property id 

方法2: -与jQuery

var jsonMap = $.stringify(empMap); 

$.each(jsonMap, function(key, value) { 
    alert(key + ": " + value); 
}); 

但它不工作要么。它打印一些字符。

我不知道我在这里失踪了什么?

+0

请参阅下面的链接。此链接有一个答案。 http://stackoverflow.com/questions/1835683/how-to-loop-through-a-hashmap-in-jsp – Veera

回答

1

看起来你只是简单地写着你的Map的任何.toString()方法返回请求,这首先不是一个好主意。

如果我是你,我会将你的Map转换成JSON对象(根据你的系统有不同的方式来做到这一点),然后将这个JSON对象的字符串表示追加到请求中,因为这样你就可以简单地调用“JSON.parse(...);”在JavaScript中将其转换为JavaScript对象,而无需自行进行任何解析。