- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
如果用户输入了无效的内容(比如需要数字的字符串),我试图让我的 View 在文本框旁边给我错误消息。相反,当用户按下提交时,我收到一个丑陋的错误页面,提示验证失败。
以下是我的部分观点:
@model MembershipTest.ViewModels.AddDriverViewModel
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
@{
Layout = "~/Views/Shared/_Layout.cshtml";
ViewBag.Title = "Add Drivers";
}
@using (Html.BeginForm("AddDriver", "Driver"))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<fieldset>
<legend>Customer Information</legend>
<table>
<tr>
<td>
@Html.Label("First Name:")
@Html.TextBoxFor(m => m.Driver.F_Name)
@Html.ValidationMessageFor(m => m.Driver.F_Name)
</td>
<td>
@Html.Label("Gender:")
@Html.RadioButtonFor(m => m.isMaleChecked, "true") Male
@Html.RadioButtonFor(m => m.isMaleChecked, "false")Female
</td>
</tr>
<tr>
<td>
@Html.Label("Last Name:")
@Html.TextBoxFor(m => m.Driver.L_Name)
@Html.ValidationMessageFor(m => m.Driver.L_Name)
</td>
这是我模型的相关部分:
[Required]
[StringLength(30)]
public string F_Name { get; set; }
[Required]
[StringLength(30)]
public string L_Name { get; set; }
在我的 Controller 的 post 方法中,我确保使用
if (ModelState.IsValid)
如果用户碰巧在名字文本框中输入了 50 个字符长的内容,我希望在他们跳出该文本框时使用 Html.ValidationMessageFor() 显示错误,以便他们可以看到它在他们按下提交之前。我是否缺少一些 jquery 来实现这一点?也许我需要包含一些 using 语句?
最佳答案
这非常简单......我只是没有将 ErrorMessage 字段添加为 [Required] 装饰器的一部分。例如:
[Required(ErrorMessage = "First name is required")]
[StringLength(30, ErrorMessage = "Name can be no larger than 30 characters")]
public string F_Name { get; set; }
[Required(ErrorMessage = "Last name is required")]
[StringLength(30, ErrorMessage = "Name can be no larger than 30 characters")]
public string L_Name { get; set; }
现在,如果用户没有在名称字段中输入任何内容,或者输入的内容超过 30 个字符,则不会执行 Post 方法,用户会收到一条小消息,告诉他们出了什么问题。
关于c# - 如何使用 html.ValidationMessageFor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19281415/
我有一个部分 View : @Html.EditorFor(model => model.BM) @Html.ValidationMessageFor(model => model.BM) 在主视
我如何检查模型属性是否存在验证错误 - 我正在使用 validationmessagefor 方法来显示错误消息。我怎样才能一次只显示一条错误消息?我 这是我拥有的模型属性 m.Communicati
我正在尝试对ASP.NET MVC3中的@Html.ValidationMessageFor()使用其他消息。效果很好,但似乎总是显示该消息,例如如果我这样做: @Html.ValidationMes
几天以来,我已经开始努力反对它,尝试了所有的想法(无论是否愚蠢),但似乎我无法让它发挥作用。 我想要存档的是:我只想显示一个带有 jquery 工具提示的图标,而不是原始的验证消息。此外,该解决方案应
你好, 我在我的页面上放置了以下代码: 然后在每个属性上我都有类似的东西: model.ModelViewAd.Title, "*", new { @class = "val" })%> 问题是,
我在页面顶部进行了一些验证。我只想在出现错误时才动态显示水平行。 @Html.ValidationMessageFor(model => model.tempHouseHoldSSNVerificat
我有两个具有一对多关系的模型类。 public class CycleType { [Required(ErrorMessage = "Cycle is required.")] pu
可能是个简单的问题,但我似乎找不到答案。 使用 MVC 2 我有一系列 Html.ValidationFor 控件。我想为文本分配一个 CSS 类,但似乎做不到。 Model.Chest, new
我的观点是: User Registration @Html.LabelFor(m => m.UsrName
为什么我的 @Html.ValidationMessageFo 不工作?当我运行该应用程序时,什么也没有发生,它允许输入所有内容。当我尝试在下面的编辑 View 中编辑项目时,它也会崩溃。我有以下内容
如果用户输入了无效的内容(比如需要数字的字符串),我试图让我的 View 在文本框旁边给我错误消息。相反,当用户按下提交时,我收到一个丑陋的错误页面,提示验证失败。 以下是我的部分观点: @model
我想在我的ASP.NET MVC应用程序中使用DataAnnotations。我已强类型化资源类,并想在我的 View 模型中定义: [DisplayName(CTRes.UserName)] str
当我的页面加载时,我的 ValidationSummary 和 ValidationMessageFor(model => model.TestNumbersString) 都显示验证错误,尽管几乎没
我有这门课: public class Product { [Required(ErrorMessage = "empty name")] public string Name { g
我想以 dd-mmm-yyyy 的形式强制执行日期。我使用以下帖子作为指南: http://blogs.msdn.com/b/stuartleeks/archive/2011/01/25/asp-ne
出于验证目的,我使用了 validationMessage 和 ValidationMessageFor Helpers。两者都显示错误消息,那么验证消息和验证消息之间的主要区别是什么。我在各种网站上
我一直致力于为 MVC 创建自定义错误验证消息,以显示 jQueryUI 样式的错误消息。 到目前为止看起来很酷,但我需要在没有错误消息的情况下隐藏整个 div...我该怎么做? 这是我的 html
我使用的是标准 MVC 成员身份验证的变体。 鉴于我的模型有: [Required] [Display(Name = "User name")] public string U
我有一些文本字段的服务器端验证消息。字段“title”是必填字段服务器端,在类中具有“[Required]”数据属性,但这似乎只在回发或表单提交时进行检查。我将“标题”文本字段保存在 jquery .
我正在为我的 Web 应用程序使用 Bootstrap ,但我在将消息状态置于正确位置的验证消息方面遇到了问题。现在我使用了这个 link 中的示例, 使用此代码: Input with err
我是一名优秀的程序员,十分优秀!