在同一位置显示验证控件之一

时间:2014-12-12 13:48:12

标签: asp.net

我对文本框使用两个验证控件,一次只显示一个。

<input type="text" id="txtEmailID" runat="server" clientidmode="static" placeholder="E-mail ID" class="form-control" maxlength="100" autocomplete />
<asp:RequiredFieldValidator runat="server" Display="Static" ID="RequiredFieldValidator1" ControlToValidate="txtEmailID" ErrorMessage="Please enter your EmailID !" />
<asp:RegularExpressionValidator runat="server" Display="Dynamic" ID="RegularExpressionValidator1" ControlToValidate="txtEmailID" ValidationExpression="^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$" ErrorMessage="Please enter valid Email ID!" />

我已将其中一个的Display属性设置为requiredfield验证程序为静态,其他ie regularexpression验证程序为动态。

如果regular expression validator被执行,我想要它应该显示在为requiredfield验证器保留的空间中。

否则如果我将它们都设置为静态,则会保留两行来显示我不想要的错误消息。

我不能将它们都设置为动态,因为还有其他输入字段只有一个验证控件。

1 个答案:

答案 0 :(得分:0)

您可以使用ValidatioonSummery。 (只需添加ID,runat =“server”等)

<asp:ValidationSummary ShowSummery="true" ValidationGroup="email"  />

并在验证器中添加:

ValidationGroup="email" Display="None"