【发布时间】:2017-07-06 15:04:10
【问题描述】:
我正在 jsf 上做一个项目,我正在使用一个选择一个菜单,允许用户选择一个项目,然后他们按下提交。当单击按钮时,jsf 调用 bean,它应该接收选择的值,但我总是得到一个空的结果。我看到了其他帖子,我想我和其他人的答案很接近,我想这只是一个缺少的小细节
这是我的代码:
<h:selectOneMenu id="sel1" value="#{foo.bankName}">
<f:selectItems value="#{foo.bankNameMap}" />
</h:selectOneMenu>
<h:commandButton id="validate" value="Submit"
action="#{foo.submit}"/>
现在在 bean 上:
public String getBankName() {
return bankName;
}
public void setBankName(String bankName) {
this.bankName = bankName;
}
private static Map<String,Object> bankNameMap;
public Map<String,Object> getBankNameMap() {
return bankNameMap;
}
@PostConstruct
public void init() {
initiateDropDown();
}
public void initiateDropDown() {
bankNameMap = new LinkedHashMap<String,Object>();
bankNameMap.put("aaaa" , "aaaa");
}
public void submit(){ //method called when clicked on the button
System.out.println("item " +bankName);
}
输出:
项目
提前致谢
【问题讨论】:
标签: jsp jsf selectonemenu