我有一个使用Struts2
的网络应用程序,我在其中验证名称和电子邮件地址的表单。我使用普通javascript
验证名称很容易,但对于我称之为服务的电子邮件地址。所以我在jsp中有一个方法,它对名称进行验证,并提交电子邮件验证表单。
这些文本字段位于div标签中,一旦一切正常就会隐藏但是如果名称无效,则此div标签不会隐藏,因为它会提示用户提供提供名称的消息。如果是电子邮件地址,我想要相同的行为(想要显示电子邮件)而不隐藏div标签,但我不知道该怎么做?
JSP
<form name="resendEsignatureFormId" id="resendEsignatureFormId" action="<integration:urlAction actionName='myAction' method="POST"/>
function validateEmailAddress() {
if( document.getElementById( 'nameId' ).value == "" ) {
document.getElementById( 'display' ).innerHTML ='Please provide name';
return false;
}
document.getElementById( 'resendEsignatureFormId' ).submit();
}
<div id="Signers" style="display: none;">
<s:iterator value="intgDetails.custDetails.signers" var="signerslist">
<div class="sectionHeaderLine"></div>
<div class="sectionHeader">Signer #<%=ct%></div>
<!-- <div id="display" class="fieldLabelBold" style="color:#0033CC"></div> -->
<div id="display" class="fieldLabelBold" style="color:red">
<c:if test="${emailValidationMessage != null}">
<div class="fieldLabelBold" style="color:red">${emailValidationMessage}</div>
</c:if>
</div>
<table width=100%>
<tr align="left">
<td align="left">
<s:textfield name="nameId" id="nameId" label="Name" cssClass="dataFieldCell3" value="%{#signerslist.name}" />
</td>
</tr>
<tr align="left">
<td align="left">
<s:textfield name="emailId" id="emailId" label="Email" cssClass="dataFieldCell3" value="%{#signerslist.email}" />
</td>
</tr>
<tr>
<td>
<s:textfield name="recipientId" id="recipientId" style="display: none;" value="%{#signerslist.recipientId}" />
</td>
</tr>
<%
ct++;
%>
</table>
</s:iterator>
<table width=100%>
<tr>
<td class="esignNavigation">
<a href="#x" onclick ="return validateEmailAddress()"><span>Confirm</span></a>
<a href="#x" onclick="hideSigners()"><span>Cancel</span></a>
</td>
</tr>
</table>
</div>