2011-05-31 62 views
1

我有一個richfaces客戶端驗證問題。這是我的xhtml頁面示例;richfaces 4客戶端驗證問題

<h:form id="deneForm"> 
<rich:panel> 

<h:panelGrid columns="2"> 
<h:inputText value="#{denemeBean.name}" id="name" required="true" requiredMessage="Not null please"> 
        <f:validateLength minimum="3" maximum="8" /> 
        <f:validateRequired /> 
        <rich:validator /> 
       </h:inputText> 
       <rich:message for="name" /> 
       <h:outputText value="Email" /> 

       <h:outputText value="Age" /> 
       <h:inputText value="#{denemeBean.age}" id="age" required="true" requiredMessage="Not null please"> 
        <f:validateLongRange minimum="18" maximum="99"/> 
        <rich:validator /> 
       </h:inputText> 
       <rich:message for="age" /> 

</h:panelGrid> 

<h:commandButton value="Submit" action="#{denemeBean.success}"> </h:commandButton> 
</rich:panel> 
    </h:form> 
當我寫值到文本框

,我可以看到驗證錯誤,但是當我按下提交按鈕,客戶端腳本的心不是激活形式提交反正。服務器端驗證開始,並說「請不要空」。如何在按提交按鈕時觸發客戶端驗證?

使用:鑽嘴魚科2,RichFaces的4

+0

這是一個有趣的問題。上面的實現反映了我一直非常密切地使用Richfaces客戶端驗證的方式。用戶在與組件進行交互時會立即獲得驗證反饋,並在提交表單時依賴於服務器端驗證。錯誤的表達方式是相同的。這聽起來像你也想客戶端驗證發生onsubmit,大概是爲了避免頁面加載的成本?除此之外,我不確定爲什麼當用戶提交表單時服務器端驗證不可接受? – 2011-05-31 12:47:57

+0

嗨戴夫,雖然客戶端驗證不是很安全,但我做了客戶端和服務器端驗證。是的,因爲較少的服務器使用情況。順便說一句,我認爲我解決了它通過替換h:commandbutton with ajax:commandbutton,我忽略了它 – asyard 2011-05-31 13:00:12

+0

這很有趣。我沒有意識到,a4j:commandButton增加了對錶單級客戶端驗證的支持。你可以發佈你自己的解決方案作爲一個答案,如果它的工作,使我們都可以受益? – 2011-05-31 13:16:08

回答

0

客戶端驗證點擊一個按鈕時,不會被調用。此功能尚未支持。

+1

hi Max Katz,我是richfaces的新手,但我認爲用' asyard 2011-06-10 10:48:19