複数の場所で使いたい設定が1つあります。私は取得し、整数値を設定する必要があります:0,1,2、-1。表示された文字列は保存されません。Wicket - DropDownChoiceでSelectOptionを使用する方法?
HTMLの断片:ジャワの
<select wicket:id="thingPref">
<option>1</option>
<option>2</option>
</select>
フラグメント。
import org.apache.wicket.extensions.markup.html.form.select.SelectOption;
import org.apache.wicket.markup.html.form.DropDownChoice;
private SelectOption thingPreference;
private void buildCommon()
{
thingPreference = new SelectOption(Integer.toString(setting()), new Model<String>("dummy"));
List<SelectOption> prefChoices = new ArrayList<SelectOption>();
prefChoices.add(new SelectOption<String>("0", new Model<String>("Current Thing")));
prefChoices.add(new SelectOption<String>("1", new Model<String>("One Prior Thing")));
prefChoices.add(new SelectOption<String>("2", new Model<String>("Two Prior Things")));
prefChoices.add(new SelectOption<String>("-1", new Model<String>("All Things")));
DropDownChoice<SelectOption> prefselect = new DropDownChoice<SelectOption>("thingPref",
new PropertyModel<SelectOption>(this, "thingPreference"), prefChoices)
{
private static final long serialVersionUID = 1L;
protected boolean wantOnSelectionChangedNotifications()
{
return true;
}
protected void onSelectionChanged(final String newSelection)
{
System.out.format("onSelectionChanged(%s)%n", newSelection);
}
};
prefselect.setNullValid(false);
prefselect.setRequired(true);
add(prefselect);
}
開発者ツールは、私は解決策は、レンダラを追加するのと同じくらい簡単であることを見ていない
<option value="-1">All Things</option>
を必要とするとき、この
<option value="3">[SelectOption [Component id = -1]]</option>
ようなHTMLを示しており、私がいることを確認していません設定には列挙型を使用する必要があります。私はWicket 7.6を使用しています。何か案は?