我无法绑定日期类型的datetime数据类型bootstrap文本框。以下是我的模特。
public class EmployeeApplications
{
....
[DataType(DataType.DateTime)]
public DateTime ApplicationDate { get; set; }
public long UserId { get; set; }
}
我强烈地将我的模型绑定到一个视图,其中ApplicationDate属性绑定到下面的日期类型文本框。
@Html.TextBox("ApplicationDate",String.Format("{0:d}", @p.ApplicationDate.ToShortDateString()),new { @class = "form-control datecontrol", @type = "date" })
我的问题是我的日期文本框不显示ApplicationDate返回的选定日期。我尝试了许多失败的事情。我偶然发现了一个教程here并尝试了他的例子。都失败了。请问我该如何设定价值?我做错了什么?
答案 0 :(得分:1)
试试这个:
$(".datecontrol").datepicker("update", new Date());
答案 1 :(得分:1)
要使用HTML5,日期必须采用ISO格式(yyyy-MM-dd)格式化。
@Html.TextBoxFor(m => m.ApplicationDate, "{0:yyyy-MM-dd}", new { @class = "form-control datecontrol", type = "date" })
附注:
[DataType(DataType.Date)]
仅适用于使用
Html.EditorFor()
,在这种情况下您还可以添加显示
使用[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}" ApplyInEditMode = true)]
格式化并使用生成控件
@Html.TextBoxFor(m => m.ApplicationDate)
,但只有MVC 5.1+
支持添加html属性(即bootstrap类名)
对于MVC 4,有必要使用Html.TextBoxFor()
答案 2 :(得分:0)
由于像我这样的人可能无法分配格式并进行数小时的调试,因此您可以查看引导程序显示的格式。并设置所需的格式。
@Html.TextBoxFor(m => m.ApplicationDate, "{0:MM/dd/yyyy HH:mm tt}", new { @class = "form-control datetimepicker"})
我的javascript调用此函数时不使用格式
$('.datetimepicker').datetimepicker();