17
私のコードにPrimeFaces <p:ajax>
タグを使用しています。親コンポーネントを更新するajax呼び出しで子コンポーネントが更新されないようにする方法を教えてください。親コンポーネントのajax更新で子コンポーネントを除外する方法は?
私のコードにPrimeFaces <p:ajax>
タグを使用しています。親コンポーネントを更新するajax呼び出しで子コンポーネントが更新されないようにする方法を教えてください。親コンポーネントのajax更新で子コンポーネントを除外する方法は?
少なくともPrimeFaces 3.3を使用している場合は、PrimeFaces Selectorsを使用できます。これにより、jQuery CSS selector syntaxをprocess
とupdate
のPrimeFaces ajaxコンポーネントの属性に使用できます。例えば
:
<h:form>
<h:inputText ... />
<h:inputText ... />
<h:inputText ... styleClass="noupdate" />
<h:inputText ... />
<h:inputText ... />
<p:commandButton ... update="@(form :not(.noupdate))"/>
</h:form>
この例では、クライアント側でclass="noupdate"
を有する入力以外はフォーム全体を更新します。
使用すると、1つを除いて、特定の構成要素のすべての子を更新したい場合は、周囲のコンポーネント(またはクラスまたは...)のidで「フォーム」を置き換える
<h:form id="form">
<h:panel id="myPanel">
<h:inputText ... />
<h:inputText ... />
<h:inputText ... styleClass="noupdate" />
</h:panel>
<h:inputText ... />
<h:inputText ... />
<p:commandButton ... update="@(form :not(.noupdate))"/>
</h:form>
<p:commandButton ... update="@(#form\:myPanel :not(.noupdate))"/>
ちょうどあなたのことを確認してください完全なクライアント側IDを使用します。
あなたの答えに感謝します!私は、Primefacesの更新属性でjQueryセレクタを使用できることに気づいていませんでした。 – Pranjali
ようこそ。 – BalusC
その構文はページに他のフォームも送信しますか? –