3

クリックイベントまたはブラーイベントのいずれかで最初に呼び出された方によって、Bean のメソッドを呼び出す必要がある検索機能を試しています。ユーザーが何かを入力するたびに結果が表示され、ユーザーがコピーして検索ボックスに貼り付けた場合も機能するため、両方のイベントが必要です。2 番目のケースではキー イベントがないため、blur イベントが必要です。私はそれらの間にセパレーターを入れてみました:

<f:ajax event="keyup blur" listener="#{mybean.search}" render="something">

も好き

<f:ajax event="keyup,blur" listener="#{mybean.search}" render="something">

うまくいきませんでした

だから今、私は自分のコードを次のように使用しています

<p:inputText value="#{mybean.search}" >
            <f:ajax listener="#{mybean.searchByIdListener}" event="keyup" render="datatable"/>
            <f:ajax listener="#{mybean.searchByIdListener}" event="blur" render="datatable"/>
</p:inputText>

ただし、このコードはイベント リスナーを 2 回呼び出します。イベントリスナーは、最初に発生するこれら 2 つのイベントのいずれかによって 1 回だけ呼び出されるとよいでしょう。

4

2 に答える 2

0

このようなものを使用しない理由:

<p:inputText onchange="" />

ユーザーガイドから:

Client side callback to execute when input element loses
focus and its value has been modified since gaining focus.
于 2013-01-02T15:31:11.607 に答える
0

プライムフェイスについてはわかりませんが、リッチフェイスでは ajax サポートを利用して複数のイベントを呼び出すことができます。focus他にイベントを使用できますか?

于 2013-01-02T12:07:23.120 に答える