[英]validation of multiple fields in jsf 1.x
我需要验证表单中的多个字段,单个字段验证工作正常。 我想知道是否所有字段都为空,而jsf 1.x和richfaces 3.3是否可以显示一条消息,如“所有字段都是必填项”,而不是每条验证消息
您可以有一个包含所有错误消息的列表,并且在提交时填充该列表。
例:
public String doBid() {
boolean flag=false;
errorMessages = new ArrayList<String>();
if (getUserID().equals("")) {
flag=true;
}
if (getKeyword().equals("")) {
flag=true;
}
if (getNumericBidAmount() == 0.00) {
flag=true;
}
if (getNumericBidDuration() =0) {
flag=true;
}
if (flag==true)
errorMessages.add("all fields are mandatory");
if (errorMessages.size() > 0) {
return(null);
} else {
return("success");
}
14 }
---------
public String getErrorMessages() {
String messageList;
if ((errorMessages == null) ||
(errorMessages.size() == 0)) {
messageList = "";
} else {
messageList = "<FONT COLOR=RED><B><UL>\n";
for(String message: errorMessages) {
messageList = messageList + "<LI>" + message + "\n";
}
messageList = messageList + "</UL></B></FONT>\n";
}
return(messageList);
}
--------------------
<h:form>
<h:outputText value="#{bidBean1.errorMessages}"
escape="false"/>
<TABLE>
<TR>
<TD>User ID:
<h:inputText value="#{bidBean1.userID}"/></TD></TR>
<TR>
<TD>Keyword:
<h:inputText value="#{bidBean1.keyword}"/></TD></TR>
<TR>
<TD>Bid Amount:
$<h:inputText value="#{bidBean1.bidAmount}"/></TD></TR>
<TR>
<TD>Duration:
<h:inputText value="#{bidBean1.bidDuration}"/></TD></TR>
<TR><TH>
<h:commandButton value="Send Bid!"
action="#{bidBean1.doBid}"/></TH></TR>
</TABLE>
</h:form>
我正在使用MyFaces Extensions Validator +一个带有ProcessedInformationRecorder的简单插件来完成您在说的事情。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.