MVC 4 - 我可以控制模型错误的显示位置吗?

时间:2013-03-11 23:07:39

标签: asp.net-mvc-4 html-form

我有一个MVC 4应用程序,并使用HTML.BeginForm在View上创建表单。我有几个字段集,我已经绝对地定位它们。例如,这是我的BeginForm和我的一个字段集:

<div style="width:1100px; height:490px;">
@using (Html.BeginForm("Create", "BicycleSellerListing", FormMethod.Post, new { enctype = "multipart/form-data" })) {
    @Html.ValidationSummary(true)

    <fieldset style="position:absolute; top:180px; left:150px; width:550px">
        <legend>Bicycle Information</legend>
...
...

问题是,如果在提交完成时ModelState中存在错误,则生成的错误将由字段集中的某些字段覆盖。有没有办法可以指出我希望显示模型状态错误的位置?

1 个答案:

答案 0 :(得分:1)

有几种方法可以显示错误。 @Html.ValidationSummary()会在一个地方显示所有错误。因此,根据您放置@Html.ValidationSummary(true)的位置 - 这将显示错误。例如,你可以把它放在表单之后,而不是像你拥有它一样。

另一种方法是使用@Html.ValidationMessageFor(...)助手。它采用模式的属性名称,因此只会显示该属性的错误。同样,你可以把它放在你想要的任何地方。通常人们把它放在输入旁边,这样输入旁边也会显示错误信息。