繁体   English   中英

c#.net使用asp:CompareValidator与日期

[英]c#.net using asp:CompareValidator with dates

我有一个由Javascript增强文本框生成的日期,格式为dd / mm / yyyy,当使用asp:comparevalidator进行验证时,该日期无法正确验证。

以下是相关代码:

<asp:CompareValidator ID="CompareValidator4" runat="server" 
                      ControlToValidate="txtEndDate" ValueToCompare="txtStartDate" 
                      Display="None" 
                      ErrorMessage="End Date should be greater than or equal to Start Date." 
                      Type="Date" Operator="GreaterThanEqual" SetFocusOnError="True">    
</asp:CompareValidator>

<strong>Start Date</strong><asp:TextBox ID="txtStartDate" runat="server" Width="215px" CssClass="textfield" Style="width: 176px; margin-left:5px;"></asp:TextBox>&nbsp;&nbsp;

<strong>End Date</strong><asp:TextBox ID="txtEndDate" runat="server" Width="215px" CssClass="textfield" Style="width: 176px;  margin-left:5px;"></asp:TextBox>&nbsp;&nbsp;

如果不清楚,我希望txtStartDate中的日期早于txtEndDate中的txtEndDate

验证后,我得到的结果是乱码,验证失败时没有明显的模式。 谁能看到错在哪里?

顺便说一句,我知道html有多穷-我正在编辑别人的代码。

您可以将页面的区域性更改为en-GB吗?

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" 
Inherits="_Default" Culture = "en-GB" %>

这里找到。

更新您的验证器标记中有错误。 如果要相互比较两个文本框日期,则必须提供ControlToValidateControlToCompare (而不是ValueToCompare

 <asp:CompareValidator ID="CompareValidator4" runat="server" 
    ControlToValidate="txtEndDate" 
    ControlToCompare="txtStartDate" 
    Type="Date" Operator="GreaterThanEqual"
    Display="None" ErrorMessage="End Date should be greater than or equal to Start Date." SetFocusOnError="True">
</asp:CompareValidator>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM