我正在使用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