在Asp.Net MVC中,我有一个包含DateTime
类型属性的模型。
如何在JavaScript中访问它?
使用@(Model.PrimitiveTypeProperty)
可以正常工作,但不适用于DateTime
的属性。
问题更复杂,但我需要至少对此值进行修改 有可能吗?
答案 0 :(得分:3)
您可以将其置于隐藏状态,例如:
@Html.HiddenFor(model => model.YourDate)
然后从javascript访问它。 在修改它的值后,在提交时,您应该将值更新回控制器。
不要忘记以下列形式输入:
@using (Html.BeginForm())
答案 1 :(得分:2)
从你的模型中你应该有DateTime属性。
public class YourModel {
public DateTime YourDateField { get; set; }
}
然后在View
你可以做到:
@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";
更改日期客户端。如果yor View有一个Form
元素,当它被提交回服务器时,传回的值将反映更改(01/01/2000)。
答案 2 :(得分:0)
如果您希望将DateTime
属性基本上翻译为JS Date
,可以尝试以下方法:
var jsDate = Date.parse('@Model.EndDate.ToUniversalTime().ToString("r")');