如何停止 ValidationMessageFor 在加载时显示错误消息?
Posted
技术标签:
【中文标题】如何停止 ValidationMessageFor 在加载时显示错误消息?【英文标题】:How do you stop ValidationMessageFor displaying an error message on load? 【发布时间】:2011-11-04 00:36:59 【问题描述】:我已向视图添加了一条验证消息“CountryId 自定义错误”。问题是它在我最初加载视图以及在 POST 时显示。
<div class="editor-field">
@html.DropDownList("CountryId", Model.GetCountries, "Please select", "0")
@Html.ValidationMessageFor(m => m.CountryId, "CountryId custom error")
</div>
我怎样才能让它只显示在 POST 上? 如果我省略了验证消息,视图会正常显示 POST 上的默认错误。
【问题讨论】:
【参考方案1】:这个项目是作为一个空的 MVC 应用程序创建的,我删除了 site.css 并重新开始。 如果您希望验证正常工作,则无法执行此操作,因为 main.css 中有重要的 css 隐藏了消息!
哇!!
【讨论】:
【参考方案2】:这里是 ValidationMessageFor 使用的 CSS 类。从其他项目复制 CSS 时很容易丢失这些。
.field-validation-error
color: red;
font-weight: bold;
.input-validation-error
background: pink;
.validation-summary-valid
display: none;
.field-validation-valid
display: none;
【讨论】:
我已经搜索了很长时间,您的回答实际上对我有帮助,如此简单但很难排除故障。谢谢你。点赞!以上是关于如何停止 ValidationMessageFor 在加载时显示错误消息?的主要内容,如果未能解决你的问题,请参考以下文章
带有 HTML.ValidationMessageFor 的 ASP.NET MVC AJAX
ModelState.AddModelError到字段的特定ValidationMessageFor?