Html.ValidationMessageFor not showing

本文关键字:showing not ValidationMessageFor Html | 更新日期: 2023-09-27 18:21:07

我有一个使用ADO.NET实体数据模型的MVC2项目,因为它有很多字段,所以我用来自动生成视图。它给了我这样的代码。

<% using (Html.BeginForm()) {%>
<%= Html.ValidationSummary(true) %>
<div class="editor-label">
    <%= Html.LabelFor(model => model.Position) %>
</div>
<div class="editor-field">
    <%= Html.TextBoxFor(model => model.Position) %>
    <%= Html.ValidationMessageFor(model => model.Position) %>
</div>

但是有更多的田地。

这是我的控制器代码:

MyProjectEntities_Career_Applications dbca = new MyProjectEntities_Career_Applications();
[HttpPost]
    public ActionResult Apply(Career_Applications application)
    {
        if (ModelState.IsValid)
        {
            //save form
            dbca.AddToCareer_Applications(application);
            dbca.SaveChanges();
        }
        else
        {
            ModelState.AddModelError("", "Application could not be submitted.  Please correct the errors below.");
        }
        //redirect to thank you page
        return View("Apply", application);
    }

当ModelState.IsValid失败时,我会看到<%=Html.ValidationSummary(true)%>,但从未显示任何Html.VValidationMessageFor。

我错过了什么?

Html.ValidationMessageFor not showing

原来问题出在CSS上。愚蠢的错误啊!

不管怎样,谢谢你的帮助。

我认为您缺少正在使用的Jquery引用或错误处理库。

当您多次包含验证脚本时,这种情况也经常发生。(在共享视图和您的视图中)