2014-10-06 27 views
0
<p:commandButton id="checkout" 
    value="Checkout" 
    action="#{checkoutBean.checkout}" 
    update="@form" 
    onclick="setTimeout('document.getElementById(\'' + this.id + '\').disabled=true;', 50);"/> 

在我結賬按鈕,我使用的超時雙擊黑客以防止雙擊... 但是,如果驗證失敗(如用戶將在一個無效的卡號),按鈕殘疾人,他們無法輸入正確的細節。防止除非驗證錯誤

我該如何解決這個問題?

回答

2

爲了防止出現重複調用結賬可以使用onstartoncomplete

onstart="PF('checkoutWV').disable()" 
oncomplete="PF('checkoutWV').enable()" 

checkoutWV是按鈕的widgetVar。