【发布时间】:2016-02-25 18:05:40
【问题描述】:
VC5 项目
我的 Razor 视图中有这个文本框和验证消息:
@Html.TextBoxFor(m => m.FireSrv.Size) @Html.ValidationMessageFor(m => m.FireSrv.Size)
我只想清除(而不是隐藏)这条消息,我不想清除整个表单。
我试过了,还是不行:
$('#FireSrv_Size').find(".field-validation-valid").remove();
FireSrv_Size 正确,是表单中字段的id。
我已经实现了
IValidatableObject
在我的 ViewModel 中。
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
string em = "Size is required";
if (HasFireSrv) { if (string.IsNullOrEmpty(FireSrv.Size)) { yield return new ValidationResult(em, new[] { "FireSrv.Size" }); } }
...
这是在生成验证错误之前和之后查看源代码中显示的内容:
<input id="FireSrv_Size" name="FireSrv.Size" type="text" value="" />
<span class="field-validation-valid" data-valmsg-for="FireSrv.Size" data-valmsg-replace="true"></span>
<input class="input-validation-error" id="FireSrv_Size" name="FireSrv.Size" type="text" value="" />
<span class="field-validation-error" data-valmsg-for="FireSrv.Size" data-valmsg-replace="true">Size is required</span>
我怎样才能清除那一条验证消息?
【问题讨论】:
-
removeClass 也不起作用。
标签: javascript jquery validation razor unobtrusive-validation