我有一个带ajax事件的下拉菜单,用于隐藏/显示基于'rendered'属性的另一个组件。
它工作正常,直到从另一个组件调用p:poll-ajax事件不会切换“ airportPickupWrapper”(尽管我可以在网络中看到ajax请求)
组件1:
<h:outputLink id="unresolvedOrdersCount" value="#{navigationMenuBean.setPage('management/orderManagement')}" style="color : red">
New orders : #{headerController.getUnresolvedOrdersCount()}
</h:outputLink>
<p:poll interval="10" update="unresolvedOrdersCount"/>
component2:
<h:selectOneMenu id="orderTypeDropdown" value="#{orderController.order.orderType}">
<f:selectItems value="#{orderController.orderTypes}"
var="orderType"
itemLabel="#{orderType.displayName}">
</f:selectItems>
<p:ajax event="change" update="airportPickupWrapper"/>
</h:selectOneMenu>
<p:panel id="airportPickupWrapper" >
<h:panelGrid columns="1" rendered="#{orderController.order.orderType.name() == 'AIRPORT_PICKUP'}">
<p:outputLabel for="flightNumber" value="Flight number: " />
<p:inputText id="flightNumber" value="#{orderController.order.flightNumber}">
</p:inputText>
</h:panelGrid>
</p:panel>
谢谢你的建议
编辑:如果我更改组件1以便不调用后备bean,那么一切正常
<h:outputLink id="unresolvedOrdersCount"></h:outputLink>
答案 0 :(得分:0)
已解决。
问题是我使用了h:outputLink,其中xmlns:h =“ http://xmlns.jcp.org/jsf/html”。 我将其切换为p:link(xmlns:p =“ http://primefaces.org/ui”),一切正常。
人们会认为它是兼容的。
谢谢。