2015-04-28 114 views
-1
public JsonResult TimeValidation(string pickUp, string delivery) 
{ 

    var errorMessage = string.Empty; 
    var dateTime = DateTime.MinValue; 

    if (!DateTime.TryParse(pickUp, out dateTime)) 
     errorMessage = "Invalid date"; 

    if (!DateTime.TryParse(delivery, out dateTime)) 
     errorMessage = "Invalid date"; 
} 
‎4‎/‎29‎/‎2015‎ ‎3‎:‎30‎:‎00‎ ‎PM pickup from ie 
4‎/‎30‎/‎2015‎ ‎12‎:‎00‎:‎00‎ ‎AM delivery from ie 
4/29/2015, 3:30:00 PM pickup from firefox 
4/30/2015, 12:00:00 AM delivery from firefox 

DateTime.TryParse无法在Internet Explorer工作

其工作在Chrome和Firefox,但好它不是转换为datetime在Internet Explorer 11,请obseve,日期和时间之间

+7

C#不在浏览器中运行。你能解释一下你到底在做什么? – Cameron

+1

*在IE中,什么*被转换为'DateTime'? –

+0

你是否从浏览器获得'stringDate'值?如果是这样,你应该展示你如何获得它。 –

回答

1

假设这是C#(看起来是这样),它在服务器上运行(实际上并不在浏览器中):您应该检查看看System.Globalization.CultureInfo.CurrentCulture的值是多少。查看来自IE与其他浏览器的请求是否有所不同。 DateTime.TryParse(string, out DateTime)使用此值来帮助解析字符串。

例如,你提供的日期:"28/04/2015 07:59:00"会导致TryParse返回false如果当前的文化是en-US,但如果当前的文化是es-MX,那么它将返回true

我不确定为什么浏览器不同于我的头顶,但它至少是一个开始寻找的地方。

相关问题