我试图将EditorForbootstrap框默认为今天的日期,并且为只读,以便提交表单时,它将是今天的日期,而无需用户手动输入。
我尝试了一些方法,但是该值仍然保持为“ mm / dd / yyyy”。如果他们今天提交,我想说“ 09/05/2019”。
这是视图中的EditorFor框
<div class="form-group">
@Html.LabelFor(model => model.postDate, htmlAttributes: new {
@class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.postDate, new { htmlAttributes = new { @value = DateTime.Today.ToString("mm/dd/yyyy"), @readonly = "readonly" } })
@Html.ValidationMessageFor(model => model.postDate, "", new { @class = "text-danger" })
</div>
</div>
这是模型中的属性
[DataType(DataType.Date)]
public DateTime postDate { get; set; }
我如何才能将其变成以首选格式显示今天日期的框?
答案 0 :(得分:1)
尝试一下:
@Html.TextBoxFor(m => m.postDate, new { @Value = DateTime.Today.ToString("MM/dd/yyyy"), @readonly = "readonly" })
注意:
MM
格式@Value
参数的大写字母必须使用其他方法,因为如果您查看EditorFor
的{{3}},则该方法不允许传递HTML属性。
MM
是显示两位数月份(而不是分钟)的正确方法。
@Value
似乎有必要大写。小写的@value
由于某些原因不起作用。