在mvc razor中显示电子邮件验证消息(红色)

时间:2012-01-19 23:06:41

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

我刚开始使用mvc razor。

我希望以红色显示验证错误消息。

这是我的viewmodel。

public class AViewModel
{
    [Required(ErrorMessageResourceName = "EmailAddressRequired", ErrorMessageResourceType = typeof(Resources))]
    [HomeController.EmailAddressAttribute(ErrorMessageResourceType = typeof(Resources), ErrorMessageResourceName = "EmailAddress_RegularExpression_ErrorMessage")]
    public string EmailAddress { get; set; }

    [HomeController.LocalizedDisplayNameAttribute("Password", NameResourceType = typeof(Resources))]
    [Required(ErrorMessageResourceName = "PasswordRequired", ErrorMessageResourceType = typeof(Resources))]
    [DataType(DataType.Password)]
    public string Password { get; set; }

    [HiddenInput(DisplayValue = false)]
    public Guid id { get; set; }
}

我的观点看起来像这样:

<div class="left">      

    @Html.EditorForModel()
    <br />

</div>

我的CSS看起来像这样:

.left { float:left; width:430px; margin:0 -480px 0 0;
       padding:0 40px 20px 0; border-right:1px solid #DDD;}

css需要改变哪些内容?

在视图中,我使用了 @ Html.EditerForViewModel()。 当前以黑色显示的验证消息。 是否有红色显示?

2 个答案:

答案 0 :(得分:5)

您可能忘记在页面中包含使用典型ASP.NET MVC项目生成的css文件。默认情况下,它被命名为site.css。它也包含在Views / Shared / _Layout.cshtml的默认布局视图中。如果您创建了一个页面而没有使用该布局,则可以将其包含在视图中。

<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />

如果您没有css文件,可以手动创建一个并在其中包含

/* Styles for validation helpers
-----------------------------------------------------------*/
.field-validation-error
{
    color: #ff0000;
}

.field-validation-valid
{
    display: none;
}

.input-validation-error
{
    border: 1px solid #ff0000;
    background-color: #ffeeee;
}

.validation-summary-errors
{
    font-weight: bold;
    color: #ff0000;
}

.validation-summary-valid
{
    display: none;
}

如果您不小心将其从当前项目中删除,则可以从另一个项目中复制整个css(创建一个新项目并将其丢弃)。

答案 1 :(得分:0)

如果右键单击验证消息的span标记,则会在错误消息中找到类似class =“field-validation-error”的内容。在样式表中,您只需添加一个属性即可使用颜色设置字体颜色:红色;并将诀窍!。

乔纳森