ASP.NET MVC3:新行上的ValidationMessageFor

Ian*_*ink 6 css c# validation asp.net-mvc asp.net-mvc-3

我有一个针对我的模型的验证消息:

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

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

在此输入图像描述

但是当他们输入一封糟糕的电子邮件时,邮件会被放到最后.我怎么能得到它?

在此输入图像描述

Dan*_*mms 7

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

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

你可能最好修改MVC放在验证消息元素和集合上的任何CSS类display:block;.

.validation-message {
    /* ... */
    display:block;
}
Run Code Online (Sandbox Code Playgroud)


sim*_*mas 6

简单地用div包围它应该可以解决问题

<div>@Html.ValidationMessageFor(m => m.Email)</div> 
Run Code Online (Sandbox Code Playgroud)