假设模型具有datetime数据类型。 所以在视图中会有一个空白字段要求您输入日期时间。
有没有办法用今天的日期/日期时间填充此HTML字段作为默认值?
答案 0 :(得分:5)
model.SomeDateField = DateTime.Now();
return View(model);
答案 1 :(得分:3)
简单
<%: Html.TextBox("date", DateTime.Now.ToShortDateString()) %>
或使用javascript获取客户端的浏览器日期。更好的是使用jquery的datepicker来选择日期的漂亮UI。有了它,您还可以预先填充默认日期:
/**
Enable jquery UI datepickers
**/
$(document).ready(function () {
$(function () {
$(".date-select").datepicker({ dateFormat: 'dd.mm.yy' });
$(".date-select").datepicker($.datepicker.regional['sl']);
});
$(function () {
$("#someDateField").datepicker('setDate', new Date());
});
});
答案 2 :(得分:0)
想添加我发现需要用今天的日期填充日期选择器的信息,该日期是从HTML5中的DateTime数据类型生成的(通过value属性视图中的剃刀),这是这样的:
@Html.TextBoxFor(model => model.YourDateInModel, new { @id = "YourDateId", @type = "date",
@Value = DateTime.Now.ToString("yyyy'-'MM'-'dd") })
请注意,ToString()格式对于使它在datepicker字段中显示日期是必需的(它需要数据库格式)。
来源:https://forums.asp.net/p/2154640/6320474.aspx?p=True&t=637376668781782563
编辑:这最终使数据库本身空白/为空,因此我还必须将模型设置为今天日期的初始值(如上所述)。
public DateTime YourDateInModel { get; set; } = DateTime.Now;
就我而言,我需要两者。使用类似以下的内容可能也会有所帮助:
$("#YourDateId").prop("disabled", true);
如果您使用JQuery / Javascript阻止对字段进行适当的更改。