我在<p:ajax>代码中使用了PrimeFaces 标记。我们如何在更新父组件的ajax调用中排除子组件的更新?
<p:ajax>
如果您至少使用PrimeFaces 3.3,则可以为此使用PrimeFaces选择器。这允许您在PrimeFaces ajax组件中使用jQuery CSS选择器语法process和update属性。
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"客户端具有的输入。
class="noupdate"
如果要更新某个组件的所有子组件(除了一个),请用周围组件的ID(或类或…)替换“ form”。
<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。