Default selection for <f:selectItem> within <h:selectOneMenu>

sergionni picture sergionni · Mar 17, 2011 · Viewed 73.6k times · Source

How to make default selection for <f:selectItem> within <h:selectOneMenu>?

It's needed,that particular "20" item of dropdown to be already selected when page is loaded.

  <h:selectOneMenu value="#{fileSearchCriteriaOut.recordsPerPage}"  >            
               <f:selectItem itemLabel="5" itemValue="5" />
               <f:selectItem itemLabel="10" itemValue="10" />
               <f:selectItem itemLabel="20" itemValue="20" selected="true"/>
  </h:selectOneMenu>

these four don't work:

<f:selectItem itemLabel="20" selected="true"/>
<f:selectItem itemLabel="20" selected="selected"/>
<f:selectItem itemLabel="20" checked="checked"/>
<f:selectItem itemLabel="20" checked="true"/>

Answer

jmj picture jmj · Mar 17, 2011
<h:selectOneMenu id="items" value="#{bean.selectedItem}">
  <f:selectItem itemLabel="10" itemValue="10"/>
  <f:selectItem itemLabel="20" itemValue="20"/>
  <f:selectItem itemLabel="30" itemValue="30"/>
</h:selectOneMenu>

The default selection would be the one which has value same as selectedItem which you set in bean.

selectedItem = 20;