我已经阅读了一些类似问题的帖子,但还没有找到任何好的解决方案。
我试图通过检查是否存在任何错误来在div
中添加css类。如下所示
<div class="form-group m-t-20 @((@Html.ValidationMessage("Email") != null && @Html.ValidationMessage("Email").ToString() != "") ? "has-danger has-error" : "")">
但是当我执行inspect-element时,似乎@Html.ValidationMessage("Email")
永远不会为空(因此总是添加has-danger has-error
),即使Email
没有验证消息,例如
@Html.ValidationMessage("Email")
已翻译为<span class="field-validation-valid" data-valmsg-for="Email" data-valmsg-replace="true"></span>
那么有没有办法检查是否存在某些错误然后添加一个css类?此外,我还会说,我不需要为这个小目的创建新类(.cs
文件)。
PS:我正在使用Asp.net MVC。在后端,我添加了像ModelState.AddModelError("Email", "User already exists");
答案 0 :(得分:3)
如果您想在View上检查模型中的错误,请检查ViewData.ModelState
属性。
像这样:
@if (!ViewData.ModelState.IsValid && ViewData.ModelState["Email"].Errors.Count > 0))
{
<span>your message<span/>
}
三元版本:
@((!ViewData.ModelState.IsValid && ViewData.ModelState["Email"].Errors.Count > 0)? "your message": String.Empty)