javascript中的asp.net mvc 3访问日期时间模型属性

javascript中的asp.net mvc 3访问日期时间模型属性,javascript,jquery,asp.net-mvc,asp.net-mvc-3,Javascript,Jquery,Asp.net Mvc,Asp.net Mvc 3,在Asp.NETMVC中,我有一个包含类型为DateTime的属性的模型 如何在JavaScript中访问它 使用@(Model.PrimitiveTypeProperty)可以很好地工作,但对于DateTime属性就不行了 问题更复杂,但我至少需要一个具有此值的alter。 可能吗?从您的模型中,您应该具有DateTime属性 public class YourModel { public DateTime YourDateField { get; set; } } 然后在视图中可

在Asp.NETMVC中,我有一个包含类型为
DateTime
的属性的模型

如何在JavaScript中访问它

使用
@(Model.PrimitiveTypeProperty)
可以很好地工作,但对于
DateTime
属性就不行了

问题更复杂,但我至少需要一个具有此值的alter。

可能吗?

从您的模型中,您应该具有DateTime属性

public class YourModel {

   public DateTime YourDateField { get; set; }

}
然后在
视图中
可以执行以下操作:

@Html.LabelFor(m => m.YourDateField);
使用
JavaScript/jQuery
访问它:

$(document).ready(function() {
   var d = $("#YourDateField").val(); 
   alert(d);

  $("#YourDateField").val = "01/01/2000"; // sets the date which will then be posted back to the model on the form submit. 
});
这将提醒您的模型中的日期值

 $("#YourDateField").val = "01/01/2000"; 

更改客户端的日期。如果您的视图有一个
表单
元素,当它被提交回服务器时,传回的值将反映更改(01/01/2000)。

您可以将它放在一个隐藏的表单中,例如:

 @Html.HiddenFor(model => model.YourDate)
然后从javascript访问它。 修改其值后,在提交时,应将该值更新回控制器

别忘了以如下形式填写:

@using (Html.BeginForm())

如果您希望基本上将
DateTime
属性转换为JS
Date
,您可以尝试以下方法:

var jsDate = Date.parse('@Model.EndDate.ToUniversalTime().ToString("r")');

您只是想使用JavaScript显示日期/时间,还是需要将其作为JavaScript
date
对象?谢谢,这正是我想要的…没有完全像那样工作,但它有助于获得它:
var jsDate=new date(parseInt(@(Model.EndDate.Year))、parseInt(@(Model.EndDate.Month))、parseInt(@(Model.EndDate.Day))@SandraS。是的,我给出的示例不正确,因为JS中的
Date
需要一个历元时间戳(而
DateTime.millides
不会给出)。我已经更新了我的答案,比你正在使用的答案更简洁。此外,使用您的一个,您将丢失与日期相关的任何时间信息。如何修改它?我从中读取数据有困难。