2014-09-05 53 views
0

我正在嘗試執行停用方法,該方法將在commandbutton上顯示帳戶的狀態(「DEACTIVATED」,「ACTIVATED」),並且當我單擊commandButton,它將根據當前狀態激活或停用帳戶。一旦我確認,commandButton將立即更新爲當前狀態。更新p:commandButton在完成actionListener的p:列中

我有下面的代碼,我想在我的actionlistener完成後在「confirmDeactivateDialog」或「confirmActivateDialog」中更新我的commandButton。我嘗試在這兩個confirmDialog標記處使用update="a,b",但它不起作用。有什麼建議麼?

<p:column headerText="Status" style="text-align: center"> 
    <p:commandButton id='a' rendered="#{bean.isActivated(account_status)==true}" oncomplete="PF('deactivateDialog').show();" value="Activated"> 
     <f:setPropertyActionListener value="#{searchEmployeeResultList}" target="#{bean.selectedEmployee}"/> 
    </p:commandButton> 

    <p:confirmDialog id="confirmDeactivateDialog" header="Confirm Deactivation" widgetVar="deactivateDialog"> 
     <p:commandButton id="Deactivate" value="Ok" oncomplete="PF('deactivateDialog').hide();" actionListener="#{AccountManagedBean.deactivate}"/> 
    </p:confirmDialog> 

    <p:commandButton id="b" rendered="#{bean.isActivated(account_status)==false}" oncomplete="PF('activateDialog').show();" value="Deactivate"> 
     <f:setPropertyActionListener value="#{searchEmployeeResultList}" target="#{bean.selectedEmployee}"/> 
    </p:commandButton> 

    <p:confirmDialog id="confirmActivateDialog" header="Confirm Activation" widgetVar="activateDialog"> 
     <p:commandButton id="Activate" value="Ok" oncomplete="PF('activateDialog').hide();" actionListener="#{AccountManagedBean.activate}"/> 
    </p:confirmDialog> 

</p:column> 
+0

「它不工作?」 - 什麼沒有工作?任何錯誤消息?也許像「組件」一個'找不到'? – Manuel 2014-09-05 11:47:50

+0

@Manuel:提示:OP在列中聲明對話框。 – BalusC 2014-09-05 11:48:12

+0

對。然後生成的'p:commandButton'的id不會只是'a'或'b'。檢查JSF生成的HTML源代碼。 JSF將爲數據表中的每一行生成一個唯一的ID,這個ID將成爲'a'元素的前綴。使用'a'和'b'的相對更新路徑。 – Manuel 2014-09-05 11:51:01

回答

0

嘗試 update="a b"

與他們之間沒有逗號

相關問題