web-dev-qa-db-ja.com

<h:selectOneMenu>内の<f:selectItem>のデフォルト選択

<f:selectItem>内で<h:selectOneMenu>のデフォルト選択を行う方法

ページがロードされるときにドロップダウンの特定の「20」項目がすでに選択されている必要があります。

  <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>

これらの4つは機能しません。

<f:selectItem itemLabel="20" selected="true"/>
<f:selectItem itemLabel="20" selected="selected"/>
<f:selectItem itemLabel="20" checked="checked"/>
<f:selectItem itemLabel="20" checked="true"/>
27
sergionni
<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>

デフォルトの選択は、Beanで設定したselectedItemと同じ値を持つものです。

selectedItem = 20;
43
Jigar Joshi

バッキングBeanでrecordsPerPageを初期化します。

あなたのソースコードから、あなたはFileSearchCriteriaOutがあり、recordsPerPageStringであると仮定します。そして、Beanのコンストラクタで次のことができます:

public FileSearchCriteriaOut() {
   recordsPerPage = "20";
}

Faceletについては、Jigar Joshiの回答を参照してください。

5
Matt Handy