当涉及到某个视图中的客户端验证错误时,我遇到了美学和一致性问题。该视图由几个(子)部分视图组成,基本上是一种同时使用 MVC/RazorHtml.Textbox()
和Html.TextBoxFor()
在许多地方的表单。在某些部分视图中,我需要输入不是强类型,因此只有TextBox()
,并且在这些情况下,验证不会触发输入框的客户端样式。
我知道 ModelState 无效,并且显示了由's 和'sHtml.ValidationSummary()
触发的验证错误的正确错误消息。然而只有's 得到类:“input-validation-error”TextBox()
TextBoxFor()
TextBoxFor()
TextBox()
问题:当错误触发时,我如何将我的 's 变为红色?(简单的说)。我认为缺少 JQuery 验证触发的值或属性。
代码:
作品:@Html.TextBoxFor(x => x.Owner, new { @class = "form-control" })
不:@Html.TextBox(name, Model.Name, new { @class = "form-control" })
HTML 输出
作品:<input class="input-validation-error form-control" data-val="true" data-val-required="Input is required." id="Owner" name="Owner" type="text" value="">
不:<input class="form-control" id="Applicants_1__Name" name="Applicants[1].Name" type="text" value="">