2

selectOneRadioリストを作成selectCheckboxMenuし、関連する Bean オブジェクトから取得するアイテムを作成したいと考えています。選択されていないリストの場合はうまく機能していますが、これらのリストにデフォルトで選択されたアイテムを提供するにはどうすればよいですか。私の現在のselectCheckboxMenuコードはこのようなものです。

<p:selectCheckboxMenu id="trdays" 
             value="#{mybean.selectedDay}"
             label="Select Days">
      <f:selectItems value="#{mybean.dayList}" var="day"
       itemValue="#{day.value}" itemLabel="#{day.name}"/>
</p:selectCheckboxMenu>

ページがロードされ、ユーザーがまだ何もしていない場合、このように表示されます。

デフォルトのページ表示

EDIT デイクラス: -

public class Day{

  private String name;
  private String value;

  //getters and setters

}
4

2 に答える 2

7

selectCheckboxMenu コンポーネントの Value 属性は、デフォルト値を取得する必要があります。Bean 側では、selectedDayListとすべてのdaylistのゲッターを作成する必要があります。

例:

@PostConstruct
public void init() {
            dayList= new ArrayList<String>();
            dayList.add("Mon");
            dayList.add("Tue");
            dayList.add("Wed");
            dayList.add("Thu");
            dayList.add("Fri");
            dayList.add("Sat");
            dayList.add("Sun");

            selectedDayList= new ArrayList<String>();
            selectedDayList.add("Tue");
            selectedDayList.add("Wed");
}


public List<String> getDayList()
    {
        return dayList;
    }

public List<String> getSelectedDaylist()
    {
        return selectedDayList;
    }

.xhtml ページは次のようになります。

<p:selectCheckboxMenu id="trdays" 
             value="#{mybean.selectedDaylist}"
             label="Select Days">
      <f:selectItems value="#{mybean.dayList}" var="day"
       itemValue="#{day.value}" itemLabel="#{day.name}"/>
</p:selectCheckboxMenu>

幸運を!

于 2013-02-12T08:13:30.340 に答える
2

selectedDayinit メソッドのリスト (または配列) にデフォルト値を追加するだけです(@PostConstruct注釈付き)。itemValueこれらの値は、対応する属性と同じ値を持つ必要があります(あなたの場合、これはですday.value)。

于 2013-02-12T08:08:52.970 に答える