我正在增强我们现有的将在EMEA上使用的Web应用程序,我需要在运行时根据用户的全局区域将日期格式从“mm / dd / yyyy”更改为“dd / mm / yyyy”。 / p>
我的问题是我所要求的验证不接受“dd / mm / yyyy”格式。
<asp:CompareValidator ID="cvDateReportCompleted" runat="server" ErrorMessage="Report Date is not in correct format" ControlToValidate="txtDateReportCompleted" Operator="DataTypeCheck" Type="Date" ValidationGroup="vgMain" Display="None"></asp:CompareValidator>
任何人都可以提供详细信息来处理asp:CompareValidator
接受“mm / dd / yyyy”或“dd / mm / yyyy”这个问题吗?
答案 0 :(得分:4)
在进一步研究之前,你必须考虑这个问题:
CompareValidator
非常特别关于它会接受的日期。例如,以下日期不被视为有效:
2001年1月1日
2001年1月1日
CompareValidator需要一个如下所示的日期:
1/1/2001
2001年1月1日
http://www.informit.com/articles/article.aspx?p=25461&seqNum=5
的解决方案:强> 的
默认情况下,ASP.Net CompareValidator
不适用于dd/mm/yyyy
格式,因此我们需要将页面的Culture
属性更改为en-GB
中的@Pagedirective
ASP.Net网页如下所示
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs"
Inherits="_Default" Culture = "en-GB" %>
答案 1 :(得分:0)
您需要设置aspx页面的Culture
。
<%@ Page culture="your culture" %>.