2012-09-27 22 views

答えて

26

少なくともPrimeFaces 3.3を使用している場合は、PrimeFaces Selectorsを使用できます。これにより、jQuery CSS selector syntaxprocessupdateの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を使用します。

+0

あなたの答えに感謝します!私は、Primefacesの更新属性でjQueryセレクタを使用できることに気づいていませんでした。 – Pranjali

+0

ようこそ。 – BalusC

+0

その構文はページに他のフォームも送信しますか? –

関連する問題