ASP.NET MVC3:新行上的ValidationMessageFor

时间:2013-02-27 23:51:27

标签: c# css asp.net-mvc asp.net-mvc-3 validation

我的模型有验证消息:

    <td colspan="2">
        <div class="rereg-input">
           @Html.TranslatedTextBoxFor(m => m.Email)
           @Html.ValidationMessageFor(m => m.Email)
         </div>
     </td>

当用户忘记时,文本在字段旁边显示*:

enter image description here

但是当他们输入错误的电子邮件时,邮件会被放到最后。我怎样才能得到它?

enter image description here

2 个答案:

答案 0 :(得分:6)

使用div简单地围绕它应该可以做到这一点

<div>@Html.ValidationMessageFor(m => m.Email)</div> 

答案 1 :(得分:6)

您需要重新排列/修复CSS / HTML结构。

<td colspan="2">
    <div class="rereg-input">
        @Html.TranslatedTextBoxFor(m => m.Email)
        <div>
            @Html.ValidationMessageFor(m => m.Email)
        </div>
    </div>
</td>

最好修改MVC在验证消息元素上放置的CSS类并设置display:block;

.validation-message {
    /* ... */
    display:block;
}