1

Primefaces セレクター - PFS を使用して HTML フラグメントを更新することは可能ですか? このことを考慮:

<h:outputText id="test" value="#{testBean.date}"/>
<span id="test2"><h:outputText value="#{testBean.date}"/></span>

<p:commandButton value="test" process="@none" update="@(#test)"/>
<p:commandButton value="test2" process="@none" update="@(#test2)"/>

第一ボタンだけスッキリ。これは些細な例です-私の本当の必要性は、コンポーネント全体を更新せずに、データテーブルの一部を更新することです。

4

1 に答える 1

3

いいえ、それは不可能です。更新ターゲットは、クライアント側で によって HTML DOM ツリーで取得できるだけでなくdocument.getElementById()、サーバー側でもによって取得できる必要がありますUIViewRoot#findComponent()。これにより、JSF は目的の HTML 出力を再生成し、最終的には ajax 更新中に適用されます。

JSF にプレーンな HTML 要素の ID を指定すると、目的の新しい HTML 出力を再生成するコンポーネント ツリーが見つかりません。単純な HTML 要素を JSF コンポーネントに置き換えるだけです。

PrimeFaces セレクターは、最終的に HTML 要素 ID に変換されます。PrimeFaces は、jQuery セレクターによって検出された要素をループし、それらのid属性を抽出してから JSF に渡します。したがって、これは本質的に、ここですでに回答されている問題と同じです: Is it possible to update non-JSF components (plain HTML) with JSF ajax? .

于 2013-04-12T11:48:47.007 に答える