我正在使用spring框架。我将java bean对象作为模型属性传递给JSP。在JSP上,我调用了一个传递这个java bean对象的javascript函数。我需要在javascript内部访问这个对象的成员。下面是代码片段在javascript中访问java对象
Test.jsp
..
..
<form:radiobutton id="showdialog" path="nextAction" value="showdialog" label="show dialog"
onclick="javascript: showDiseaseGroupDialog('${dataRequestFormDTO}');"/></span></div>
..
..
Common.js
function showDiseaseGroupDialog(dataRequestFormDTO){
alert("DG:"+dataRequestFormDTO.selectedDiseaseGroup);
for(var diseaseGroupDTO in dataRequestFormDTO.availableDiseaseGroups.values){
alert(diseaseGroupDTO.name);
}
}
DataRequestFormDTO.java
public class DataRequestFormDTO{
private String selectedDiseaseGroup;
private Map<String, DiseaseGroupDTO> availableDiseaseGroups;
public String getSelectedDiseaseGroup() {
return selectedDiseaseGroups;
}
public void setSelectedDiseaseGroup(String selectedDiseaseGroup) {
this.selectedDiseaseGroup = selectedDiseaseGroup;
}
public Map<String, DiseaseGroupDTO> getAvailableDiseaseGroups() {
return availableDiseaseGroups;
}
public void setAvailableDiseaseGroups(
Map<String, DiseaseGroupDTO> availableDiseaseGroups) {
this.availableDiseaseGroups = availableDiseaseGroups;
}
}
public class DiseaseGroupDTO {
private String id;
private String name;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
问题是我在showDiseaseGroupDialog函数中出错。第一个提示显示“DG:未定义”,javascript错误“availableDiseaseGroups未定义”。
我想了解
为什么的java bean成员不是在JavaScript访问?虽然在jsp中我可以打印相同的值。
hashmap/arraylist如何在JavaScript中访问?
java!= javascript。我认为你需要重新评估你的假设。 – amal