1
我有一個包含f:validateRegex字段的p:inputText(PrimeFaces)。我試圖確保輸入的信息採用格式。摘錄:是否f:validateRegex呈現給JavaScript?
<p:inputText id="usernameInput" required="true" validatorMessage="Invalid Email" value="#{sessionHandler.username}" >
<f:validateRegex pattern="^[_A-Za-z0-9-\+]+(\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]+(\.[A-Za-z0-9]+)*(\.[A-Za-z]{2,})$"/>
<f:ajax event="keyUp" render="emailMessage" />
</p:inputText>
<p:watermark for="usernameInput" value="Email"/>
<h:message id="emailMessage" />
在F:validateRegex和f:阿賈克斯似乎並不奏效(如果出現不正確的格式沒有消息)。當我查看呈現的HTML時,我注意到f:validateRegex和f:ajax都是這樣顯示的,而不是呈現的HTML組件或javascript字段。所以,我的問題是:f:validateRegex應該呈現爲JavaScript的客戶端?如果是這樣,爲什麼它不能正確渲染?
我在我的名字空間上收到「NLS丟失消息」警告。我相信我可能使用了不正確的名稱空間。我使用了'xmlns:f =「http:/java.sun.com/jsf/core」' – chRyNaN 2014-09-18 17:18:31
這就是舊的JSF 2.0/2.1命名空間,它應該在JSF 2.2上同樣好用。嘗試升級莫哈拉。在2.2.0/2.2.1/2.2.2版本中,XML名稱空間註冊中存在一些錯誤。如果錯誤仍然存在,那麼只需忽略並運行它,並在瀏覽器中驗證是否一切正常。如果是這樣,那麼它可能只是你的編輯器(IDE),而他們又需要升級。 – BalusC 2014-09-18 17:19:04
好吧,會做謝謝 – chRyNaN 2014-09-18 17:20:00