所以目前我有这3个验证器
<asp:RegularExpressionValidator ID="dashboardFromDateDateCheck" runat="server" ValidationExpression="[0-9][0-9]/[0-9][0-9]/[0-9][0-9][0-9][0-9]"
ControlToValidate="filterFromDate" ErrorMessage="Invalid From Date Format, (mm/dd/yyyy)" Text="*"></asp:RegularExpressionValidator>
<asp:RegularExpressionValidator ID="dashboardToDateDateCheck" runat="server" ValidationExpression="[0-9][0-9]/[0-9][0-9]/[0-9][0-9][0-9][0-9]"
ControlToValidate="filterToDate" ErrorMessage="Invalid To Date Format, (mm/dd/yyyy)" Text="*"></asp:RegularExpressionValidator>
<asp:CompareValidator ID="checkDashboardFilterDateRange" runat="server" ControlToValidate="filterFromDate" ControlToCompare="filterToDate" Type="Date"
Operator="LessThanEqual" ErrorMessage="From Date must be before To Date" Text="*"/>
但是如果两个日期都有效并且输入了两个日期,我只希望比较验证器有效。因为在我的搜索中,他们可以将日期留空或仅输入日期或日期。
答案 0 :(得分:0)
放弃CompareValidator
并添加CustomValidator
。使用CustomValidator
,您将能够实现所需的逻辑。
如果你想要,你可以在技术上将其他两个验证器扔进你的CustomValidator
,但我会将这两个验证器分开。
答案 1 :(得分:0)
您的代码似乎对我有用。如果我将一个或两个字段留空,它可以让我通过。否则验证工作。 HMM。