Html.ValidationMessageFor Text Color

时间:2011-12-08 22:12:00

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

可能是一个简单的问题,但我似乎无法找到答案。

使用MVC 2我有一系列Html.ValidationFor控件。我想为文本分配一个CSS类,似乎无法做到。

<%= Html.TextBoxFor(Model => Model.Chest, new { @class = "textBoxMeasure" })%>
<%= Html.ValidationMessageFor(Model => Model.Chest) %>

如果我尝试使用与textbox相同的方法,因为它需要一个字符串,因为它需要一个字符串,当我在其中放入一个字符串仍然无法正常工作时!

谢谢

5 个答案:

答案 0 :(得分:22)

有一个变量将htmlAttributes作为第三个参数(第二个是应该显示的消息,或者你可以使用null作为默认验证消息)

Html.ValidationMessageFor(
        Model => Model.Chest, 
        "Please enter a value", 
        new { @class = "redText" })

有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/ee721293%28v=vs.98%29.aspx

答案 1 :(得分:20)

我在接受的答案中添加了评论,但我无法格式化以获得更好的观点。所以,这是我已接受的回复中已经格式化的评论。

我有类似的情况,我使用了接受答案的解决方案。但我希望使用模型注释中的消息。我试过这个:

@Html.ValidationMessageFor(Model => Model.Chest, null, new { @class = "text-danger" });

它正确地为我工作。我使用MVC4和bootstrap。

答案 2 :(得分:8)

使用分配给保留邮件的span标记的类。如果该字段有效,则该类是字段验证有效的。如果其字段验证错误存在错误。

我用

    .field-validation-error {
        color:Red;
    }

答案 3 :(得分:0)

最简单的方法是在div标签中放置@ Html.ValidationMessageFor并将css应用于div标签

    <div style="font-size:15px !important;">
             @Html.ValidationMessageFor(model => model.Password, "", new { @class = "text-danger" })
    </div>

答案 4 :(得分:0)

这样颜色范围会更广。

@Html.ValidationMessageFor(x => x.WriterName, "", new { @style = "color:red" })