1

p:inputText に値を記憶させる方法は? そこに autocomplete="on" がありますが、機能しません。

以下のコードを見つけてください。

<p:inputText id="username_email" value="#{BsnsSgnupLgnBen.userName}" required="true" size="25" autocomplete="on" >
  <f:validateLength minimum="0" maximum="50" />
</p:inputText>

どんな手掛かり?

4

2 に答える 2

3

ブラウザー組み込みのオートコンプリート/オートフィルは、同期ページの読み込み中にのみトリガーされます。したがって、フォームを ajax でロードしている場合、オートコンプリート/オートフィルはトリガーされません。どうやらそれがここで起こっていることです。解決策は明らかです。オートコンプリート/オートフィルが必要なフォームを同期的にロードする必要があります。たとえば、、<h:link>など<h|p:button>、または を使用したナビゲーションfaces-redirect=true

特定の入力フィールドはログイン フォームの一部のように見えるので、完全を期すために追加したいのですが、考慮すべきもう 1 つのことは、ログイン フォームのユーザー名/パスワードです (フォームがログイン フォームである場合、フォームはログイン フォームと見なされます)<input type="password">ログイン自体が ajax によって送信された場合、少なくとも 1 つのフィールド) はオートコンプリート/オートフィル用に記憶されません。実際のログインは同期的に実行する必要があります。これに使えます<p:commandButton ajax="false">

具体的な問題は JSF とはまったく関係がないことに注意してください。この質問のコンテキストでは、単なる HTML コード ジェネレーターです。まったく同じ HTML 出力を生成する別のサーバー側言語を使用している場合や、プレーンなバニラ HTML を使用している場合でも、まったく同じ問題が発生する可能性があります。

于 2013-06-24T16:45:31.683 に答える
-4

Primefaces http://www.primefaces.org/showcase/ui/autocompleteHome.jsfの autoComplete コンポーネントを使用する必要があると思います

于 2013-06-24T15:59:14.660 に答える