我一直在解决这个问题,而且我不知道为什么我的代码似乎无法正常工作。我只想显示日期,即我从ASP.NET MVC视图中从SQL Server数据库获取的日期,但是似乎没有任何作用。
这是我的代码
<div class="form-group">
<label>Separated Date</label>
@Html.TextBoxFor(model => model.SeparatedDate, new { @class = "form-control", disabled = "disabled" })
</div>
我使用了一个viewmodel,在其中设置了它仅显示日期。
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:MM/dd/yyyy}")]
public Nullable<System.DateTime> SeparatedDate { get; set; }
但是当我渲染页面时,页面上仍然显示时间
我希望有人能对此提供帮助
答案 0 :(得分:2)
您可以在TextBoxFor
帮助器中指定日期格式,而无需指定时间:
@Html.TextBoxFor(model => model.SeparatedDate, "{0:MM/dd/yyyy}", new { @class = "form-control", disabled = "disabled" })
当然,因为您要使用DisplayFormat
来定义DataFormatString
,所以可以使用EditorFor
:
@Html.EditorFor(model => model.SeparatedDate)
参考:TextBoxFor show date without time
注意:已禁用的输入助手将不会发送其中包含的值。如果要一起发送但仍不允许用户输入,请改用readonly="readonly"
属性。