ASP CompareValidator总是在两个日期返回false,无论如何

时间:2012-04-20 14:49:47

标签: asp.net asp.net-mvc

我有两个文本控件,一个是开始日期,一个是结束日期。我需要在这些日期验证用户输入,简单,开头必须小于或等于结束日期。

我有以下代码:

<asp:TextBox ID="txtStartDate" runat="server" CssClass="calendar" TabIndex="5"></asp:TextBox>    

<asp:TextBox ID="txtEndDate" runat="server" CssClass="calendar" TabIndex="7"></asp:TextBox>

<asp:CompareValidator ID="cvDate" Operator="GreaterThanEqual" Type="Date" 
    ControlToValidate="txtEndDate" ControlToCompare="txtStartDate"
    ErrorMessage="End date must be greater than or equal to start date!" 
    runat="server" Display="None"/>

<asp:ValidatorCalloutExtender ID="cvDate_ValidatorCalloutExtender" runat="server"
    CloseImageUrl="images/close.gif" Enabled="True" HighlightCssClass="formFieldHighligherOnValidation"
    TargetControlID="cvDate" WarningIconImageUrl="images/warning.gif">
</asp:ValidatorCalloutExtender>

问题是无论我在UI中选择哪个日期,验证总是失败。我不明白为什么,我已经看过这里和其他论坛的各种帖子,这似乎是正确的方法。 想法?

编辑:

日期实际上只是文本框中的纯字符串。我正在使用AjaxControlKit日历。这就解释了为什么当我比较这些字符串时,我得到了如此奇怪的结果。我想保留当前的日历,因为它看起来比普通的ASP更好,但后来我遇到了问题,如何比较日期。

0 个答案:

没有答案