3

アプリケーションの設定パネルを作成したい。アプリケーションは設定値をデータベーステーブルに保存します。設定パネルは、設定を表示し、値を変更するために使用されます。このように値を表現したいと思います。

ここに画像の説明を入力してください

ここに画像の説明を入力してください

このようにして、ユーザーは固定値のみを入力できるようになります。カスタム値を入力するようにユーザーに変更を加えたい。このような:

ここに画像の説明を入力してください

selectOneMenuオプションで作成したいcustom。ユーザーが選択customすると、カスタム値を入力できるフィールドにselectOneMenu置き換えられます。ボタンをクリックすると、データがデータベースに保存されます。これはページをリロードせずに可能ですか?多分AJAXで?inputTextSAVE

これはどのように実装できますか?

4

2 に答える 2

4

現在のオプションがに等しいときはいつでも<f:ajax>を表示するために使用します。<h:inputText>"custom"

<h:selectOneMenu value="#{bean.type}">
    <f:selectItem itemValue="one" itemLabel="Option one" />
    <f:selectItem itemValue="two" itemLabel="Option two" />
    <f:selectItem itemValue="three" itemLabel="Option three" />
    <f:selectItem itemValue="custom" itemLabel="Define custom value" />
    <f:ajax render="input" />
</h:selectOneMenu>
<h:panelGroup id="input">
    <h:inputText value="#{bean.customType}" rendered="#{bean.type == 'custom'}" required="true" />
</h:panelGroup>
于 2012-03-14T20:00:52.033 に答える
0

ブートストラップselect2クラスを使用できます。

<h:selectOneMenu styleClass="form-control input-sm select2"
value="#{myBean.data}" id="data">
</h:selectOneMenu>

                        
于 2021-11-24T13:17:46.103 に答える