我在使用@Html.HiddenFor()
助手时有一些奇怪的行为,想知道这是否是设计使然?
[id字段本质上是预订表单的Guid
字符串值,在用户预订此值之前,该值自然为空/空,并存储在隐藏字段中。
@Html.HiddenFor(m => m.BookingId)
//Renders correctly as:
<input type="hidden" name="BookingId" value />
通过ajax发布此表单时,将生成预订ID,并将其与模型中的表单一起返回,并再次使用完全相同的隐藏字段进行存储。我可以验证model.BookingId
是否已分配值,但是当我检查隐藏字段的值时,它是否为[[仍然为null?
@Html.HiddenFor(m => m.BookingId)
//Renders incorrectly as:
<input type="hidden" name="BookingId" value />
//It should be
<input type="hidden" name="BookingId" value="The booking id here" />
这里是踢脚,我将html助手更改为此,并且按预期工作...
<input type="hidden" name="BookingId" value="model.BookingId" />
什么给了?
@Html.HiddenFor(model => model.BookingId,
new { Value = @Model.BookingId})