4

ユーザーが <h:inputText> に値を入力している間、すぐにアイコンを更新したいと考えています。

私は次のメイクアップを持っています:

<h:inputText id="listprice" value="#{mybean.listPrice}">
    <f:converter converterId="mybean.convertPrice"/>
    <a4j:ajax event="keyup" render="infoIcon" />
</h:inputText>

値を実際に入力すると、すべて正常に動作します!

ただし、ページに再度アクセスして値を入力し始めると、Firefox は以前のセッションから選択する値のリストを提供し、マウスでそれらの値の 1 つを選択しても、イベントが発生しません!

この場合、キーアップがないため、これを理解しています。そこで、次のような別のイベント ハンドラーをバインドしました。

<h:inputText id="listprice" value="#{mybean.listPrice}">
    <f:converter converterId="mybean.convertPrice"/>
    <a4j:ajax event="keyup" render="infoIcon" />
    <a4j:ajax event="mouseout" render="infoIcon" />
</h:inputText>

...そして、「onchangeからonmouseoutまで」のあらゆる種類のイベントを結び付けましたが、成功しませんでした。

では、この「ブラウザの提案リストから選択するイベント」をすぐにカバーするにはどうすればよいですか?

4

2 に答える 2

6

ユーザーの以前のセッションからの値が必要ない場合は、属性autocomplete="off" を使用できます。

それ以外の場合は、onmouseup イベントを使用できます。

于 2012-08-18T11:41:02.130 に答える
1

これは既知のバグである可能性があり、次の場所で回避策が提案されています: http://forums.mozillazine.org/viewtopic.php?f=38&t=584166&start=0&st=0&sk=t&sd=a

リンクされた投稿は非常に古く、Firefox v2 について話し合っているため、関連性がなくなった可能性がかなりありますが、提案された回避策を試す機会があれば、機能するかどうかをお知らせください。

于 2012-08-18T15:41:51.100 に答える