当我像这样对Razor HTML进行编码时:
@using (Html.BeginForm(new { ReturnUrl = ViewBag.ReturnUrl })) {
@Html.ValidationSummary()
}
我得到以下内容,这正是我想要的:
<div class="validation-summary-valid" data-valmsg-summary="true">
<ul>
<li style="display:none"></li>
</ul>
</div>
然而,我需要的表格如下:
<form class="form" data-href="/User/Account/Register" id="registerForm">
@Html.ValidationSummary()
</form>
使用上面的代码我没有得到validation-summary-valid类。能够 有人解释为什么这是或者可能建议我如何编码 HTML.BeginForm,以便我可以获得我需要的表单定义。
答案 0 :(得分:0)
使用重载的BeginForm包含HtmlAttributes:
@using (Html.BeginForm("action", "controller", new { ReturnUrl = ViewBag.ReturnUrl }, FormMethod.Post, new { @class = "form", @id = "registerForm", data_href = "/User/Account/Register" }))
{
....
}
视图引擎不会解析“data-href”,因此您必须使用下划线而不是连字符。
答案 1 :(得分:0)
在您的视图顶部尝试以下
ViewContext.FormContext = new FormContext();