我无法从 ac# datetime 创建 js 日期变量。我注意到 jquerys .val() 方法的一些奇怪行为。
输入元素保存日期信息,如下所示:
@Html.HiddenFor(t => t.Tasks[i].Task.Deadline, new { @class = "task-end", @Value = Model.Tasks[i].Task.Deadline.Subtract(new DateTime(1970, 1, 1)).TotalMilliseconds })
在javascript中,我这样做:
var date = new Date($("MyDateFromHiddenField").val());
将此日期写入控制台会给出无效日期。
如果我写信$("MyDateFromHiddenField").val()
给控制台,我会得到1372854195130
用这个数字硬编码日期会给我一个有效的日期:
var date = new Date(1372854195130); <---Valid
出于某种原因, new Date() 不喜欢 .val() 方法。
示例:http: //jsfiddle.net/hZ7bm/1/