0

当我像这样编写 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 以便我可以获得所需的表单定义。

4

2 回答 2

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”,因此您必须使用下划线而不是连字符。

于 2013-01-01T21:27:09.947 回答
0

在您的视图顶部尝试以下操作

ViewContext.FormContext = new FormContext();

于 2013-01-01T22:32:07.993 回答