MVC 4 HiddenFor字段未出现在渲染标记中

时间:2013-06-07 17:37:20

标签: asp.net-mvc asp.net-mvc-4 hidden-field

使用MVC 4并希望在回发时保留一些值,因此它们会进入隐藏字段。实质上:

@using (Html.BeginForm())
{
    Html.HiddenFor(model => model.EventId);
    Html.HiddenFor(model => model.paymentMethodId);
}

但是隐藏的字段没有出现在渲染的标记中,因此 - 显然 - 在回发时缺失。

2 个答案:

答案 0 :(得分:6)

您需要添加@@Html.HiddenFor()。否则你只是执行辅助方法,但实际上并没有对输出做任何事情。

答案 1 :(得分:2)

正如dombenoit所说,缺少“@”指令,还需要删除“;”由于某种原因,从每行的末尾开始,因此更正的代码示例如下所示:

@using (Html.BeginForm())
{
    @Html.HiddenFor(model => model.EventId)
    @Html.HiddenFor(model => model.paymentMethodId)
}

现在按预期呈现隐藏字段。