こんにちは、私はJSFを初めて使用し、JSFの問題で立ち往生しています。JSFページにコンテンツを動的に追加したいのですが、何らかのイベントの後にページに追加する必要のあるファセットが1つあることが必要です。
私のページには
2つのフィールド「ユーザー名」と「回答」
および
2つのボタン「ログイン」と「パスワードの回復」
フェイスレットには
フィールドとボタンだけ
このページを実行すると、ページのコンテンツ(上記)のみが表示され
、ユーザーがボタン'recover password'
を押すと、ボタンを押した後、同じページのページのコンポーネントの下にフェイスレットが表示されるようになります。フェイスレット。
しかし、コードを実行すると、2番目のファセットを動的に追加するロジックを配置していないため、両方が表示されます。
ここに私のコードのパッチを以下に示します
<h:inputText id="txtLogin" styleClass="textEntry" required="true" requiredMessage="Username is required.">
</h:inputText>
<h:inputText id="answer" styleClass="textEntry" autocomplete="off" required="true" requiredMessage="Answer is required."></h:inputText>
<h:commandButton id="btnSave" value="Save" styleClass="formbutton" onclick="btnSave_Click" />
<h:commandButton id="btnRecover" value="Recover" styleClass="formbutton" onclick="btnRecover_Click"/>
このbtnRecover_click
クリックすると、このフェイスレットが含まれるか、このコードが実行されます。
<div class="divPadding">
<ui:include id="passrecov" src="ucPasswordRecovery.xhtml" rendered="false"/>
</div>
これはJSFで行う必要があり、JavaScriptでは行いたくないことを覚えておいてください。
ありがとう