Javascript HTML5输入日期时间本地获取日期对象跨浏览器

Javascript HTML5输入日期时间本地获取日期对象跨浏览器,javascript,asp.net-mvc-3,html,datetime,cross-browser,Javascript,Asp.net Mvc 3,Html,Datetime,Cross Browser,我有一个HTML5网页(使用asp mvc3和razor),其中有一个datetime本地输入,如下所示: <input type="datetime-local" name="StartTime" id="StartTime" data-val-required="The Event Start Time field is required." data-val="true"> 根据上面代码中的注释,这在Opera11(桌面)中有效,但在iPad上的Safari中不起作用。 Op

我有一个HTML5网页(使用asp mvc3和razor),其中有一个datetime本地输入,如下所示:

<input type="datetime-local" name="StartTime" id="StartTime" data-val-required="The Event Start Time field is required." data-val="true">
根据上面代码中的注释,这在Opera11(桌面)中有效,但在iPad上的Safari中不起作用。 Opera以“2011-12-01T12:00”的格式返回日期,但Safari似乎在做其他事情(似乎是“2012-01-01 00:00”)


是否有跨浏览器的方法从本机日期选择器输入获取实际日期对象?

未返回日期对象?

未返回日期对象?

日期。parseString
不是标准方法;您需要向我们展示这方面的代码。@Domenic,这是一种扩展方法,对于不支持日期选择器的浏览器来说效果很好。我的问题是if语句的true分支。
Date.parseString
不是标准方法;您需要向我们展示这方面的代码。@Domenic,这是一种扩展方法,对于不支持日期选择器的浏览器来说效果很好。我的问题是if语句的true分支。谢谢,我不知道这个属性(在示例中似乎没有提到太多)。如果我将输入类型更改为“datetime”,但它会为“datetime local”返回null,则此操作有效。我真的需要向用户显示本地时间。谢谢,我不知道这个属性(在示例中似乎没有提到太多)。如果我将输入类型更改为“datetime”,但它会为“datetime local”返回null,则此操作有效。我真的需要向用户提供本地时间。
var startdatevalue = $('#StartTime').val();
var value = $('#EndTime').val();
var dateStart, dateValue;
if (Modernizr.inputtypes.date) {
    //TODO: this doesn't seem to work in safari mobile
    dateStart = Date.parse(startdatevalue);
    dateValue = Date.parse(value);
}
else {
    dateStart = Date.parseString(startdatevalue.trim(), "@Constants.DateTimeFormat");
    dateValue = Date.parseString(value.trim(), "@Constants.DateTimeFormat");
}