0

当我尝试提交特定日期“20-10-2013”​​(国际格式:2013-10-20”)时,rangevalidator 会抛出无效日期的错误消息

<asp:TextBox ID="txtDataInicial" runat="server" Width="55px"></asp:TextBox>
<asp:RangeValidator ID="rgvDtInicial" runat="server" ControlToValidate="txtDataInicial"
    Display="Static" MinimumValue="01/01/1800" MaximumValue="31/12/9999" Type="Date"
    ErrorMessage="A data inicial, deve ter o seguinte formato: DD/MM/AAAA"
    ValidationGroup="Consultar"></asp:RangeValidator>
<asp:Button ID="btnConsultar" runat="server" Style="width: 150px;" Text="Consultar"
    OnClick="btnConsultar_Click" ValidationGroup="Consultar" />

它适用于“19-10-2013”​​、“21-10-2013”​​、“20-10-2014”、“20-10-2012”等日期。

它只是在我提交这个日期时发生!有谁知道为什么?

4

2 回答 2

0

日期取决于文化。在 web.config 或 Page 指令中以声明方式或以编程方式指定您的文化。

看看这个:http: //msdn.microsoft.com/en-us/library/bz9tc508 (v=vs.100).aspx

于 2013-06-26T16:29:46.767 回答
0
  1. Rangevalidator 控制前端代码 这是错误的罪魁祸首。确保cultureinvariantvalues 设置为false。

  2. 确保在后面的代码中分配正确的最小和最大日期范围。

  3. 这是为了将我们的日期比较标准化为与服务器本地化设置无关的culture="en-GB",后者使用“dd/mm/yyyy”。您可以使用“en-US”,格式为“mm-dd-yyyy”。

http://chinteongtan.blogspot.com/2014_04_01_archive.html

于 2014-05-14T04:19:46.690 回答