我知道在没有托管bean的情况下进行此项工作可能不是最好的做法......但我想让它以这种方式工作:)
<h:selectOneMenu id="SelectMenu}">
<f:selectItem itemValue="1" itemLabel="A"/>
<f:selectItem itemValue="2" itemLabel="B"/>
<f:selectItem itemValue="3" itemLabel="C"/>
</h:selectOneMenu>
<h:commandLink value="click" action='#{someController.action(SelectMenu.itemValue)}' />
我想ajax可能会有所帮助,但我从未使用过它。
非常感谢你的帮助
答案 0 :(得分:1)
直接将<h:selectOneMenu />
值绑定到视图:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets">
<h:form>
<h:selectOneMenu value="#{selected}">
<f:selectItem itemValue="1" itemLabel="A" />
<f:selectItem itemValue="2" itemLabel="B" />
<f:selectItem itemValue="3" itemLabel="C" />
</h:selectOneMenu>
<h:commandLink value="click" action='#{myBean.action(selected)}' />
</h:form>
</html>
@ManagedBean
@RequestScoped
public class MyBean {
public void action(String selectedValue) {
System.out.println("Selected " + selectedValue);
}
}