【发布时间】:2011-11-29 02:57:07
【问题描述】:
我有一个带有 DateTime 属性的模型,它在一个地方被放置在一个隐藏的输入字段中。
@Html.HiddenFor(m => m.StartDate)
生成以下 HTML:
<input id="StartDate" name="StartDate" type="hidden" value="1/1/2011 12:00:00 AM" >
问题是时间包含在值中,而我的自定义日期验证需要 ##/##/#### 格式的日期,从而导致验证失败。我可以轻松更改我的自定义日期验证以使这种情况有效,但我宁愿这样做,以便隐藏字段以正确的格式放置值。
我尝试在模型属性上使用 DisplayFormat 属性,但这似乎并没有改变隐藏输入的格式。
我确实意识到我可以手动创建隐藏输入并调用 StartDate.ToString("MM/dd/yyyy") 作为值,但我也在动态生成的项目列表中使用此模型,因此输入是索引并具有像 Collection[Some-Guid].StartDate 这样的 id,这会使找出输入的 id 和名称变得更加困难。
在将页面上的字段呈现为隐藏输入时,是否可以使“值”值以特定格式出现?
【问题讨论】: