25

コードでPrimeFaces<p:ajax>タグを使用しています。親コンポーネントを更新する ajax 呼び出しで子コンポーネントが更新されないようにするにはどうすればよいですか?

4

1 に答える 1

37

少なくとも PrimeFaces 3.3 を使用している場合は、これにPrimeFaces セレクターを使用できます。これにより、PrimeFaces ajax コンポーネントでjQuery CSS セレクター構文を使用できるようにprocessなります。update

例えば:

<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 を使用していることを確認してください。

以下も参照してください。

于 2012-09-27T10:41:43.380 に答える