2015-06-18 70 views
0

以下是正在使用的代碼片段。當我從下面的代碼中刪除呈現的屬性時,監聽器被調用。但是使用渲染,它不會調用監聽器。 我的PrimaryContactHomeAddressBean bean位於RequestScope中,而AddressManagedBean具有ViewScope。Primefaces在面板中使用呈現時Ajax偵聽器未被調用

<p:outputPanel id="countyPanel"> 
      <p:panelGrid 
       id="primaryContactHomeZipPanel" rendered="#{address.isMultipleCounty eq 'Yes'}"> 
       <h:outputLabel for="primaryContactHomeCounty"> 
        </h:outputLabel> 
       <p:selectOneMenu id="primaryContactHomeCounty" 
        value="#{addressManagedBean.countyName}"> 
        <f:selectItems value="#{addressManagedBean.countyListDropdown}" /> 
         <p:ajax listener="#{primaryContactHomeAddressBean.saveCountyName}" process="@this" update="primaryContactHomecountyName" partialSubmit="true"></p:ajax> 
       </p:selectOneMenu> 
       <p:message for="primaryContactHomeCounty" /> 


      </p:panelGrid> 
     </p:outputPanel> 
+0

您對'

+0

這是一個錯字。現在添加了。 – Ninja

+0

'#{address}'的範圍是什麼? – BalusC

回答

-1

該行不符合JavaBean標準。

rendered="#{address.isMultipleCounty eq 'Yes'}" 

如果獲取與is開始,那麼它應該返回一個布爾值,但在這裏,你檢查的字符串。如果它返回一個布爾值,則刪除eq 'Yes',不管重命名爲multipleCounty

+1

我們能不能把注意力集中在這裏的實際問題上...... !!! – Ninja

+0

只有當你包含渲染的代碼時,代碼纔會工作,它的語法不正確?這聽起來像是我的實際問題。 –

+0

我同意不符合Java標準,但沒有編譯問題。即使我使用getMultipleCounty而不是isMultipleCounty,問題仍然是一樣的。 – Ninja

0

我可以通過移動isMultipleCounty變量爲ViewScoped豆即AddressManagedBean.

相關問題