【发布时间】:2013-11-18 13:28:02
【问题描述】:
我有一个这样的选择菜单:
<h:selectOneMenu value="#{serverMB.selectedServerType}" >
<f:converter binding="#{serverTypeConverter}"/>
<f:selectItems value="#{serverMB.serverTypesList}" var="servertypes"
itemLabel="#{servertypes.server_type_name}" />
<f:ajax listener="#{serverMB.changeSelectedOneMenuServerType}" render="selectservertype"/>
</h:selectOneMenu>
我希望选择菜单的默认值是之前已填充的一个对象的值,如下所示:
<h:selectOneMenu value="#{serverMB.selectedServerType}" default="serverMB.server.servertype"> // <- default
或者像这样:
<h:selectOneMenu value="#{serverMB.selectedServerType}">
<f:converter binding="#{serverTypeConverter}"/>
<f:selectItem value"serverMB.server.servertype"/> <- but this item was the first one and has been selected
<f:selectItems value="#{serverMB.serverTypesList}" var="servertypes"
itemLabel="#{servertypes.server_type_name}" />
</h:selectOneMenu>
【问题讨论】:
-
只需将此
#{serverMB.selectedServerType}设置为您的默认值,然后将 selectOne 设置为默认值 -
我不明白你的意思,如何设置为我的默认值?
-
在
serverMB上,在@PostConstruct 方法或什至在构造函数中渲染页面之前,您可以设置selectedServerType = objectThatHasTheDefaulValue,然后JSF 将完成剩下的工作。 -
是的,谢谢,但是 jsf 没有像 selectonemenu list 的默认值这样的属性?
-
它不需要,因为对象(值)是由 bean 控制的,那么当你在 bean 上设置对象时,它将评估为默认值。
标签: jsf