使用具有单个模型属性的多个@ Html.ValidationMessageFor()帮助程序

时间:2015-06-15 18:04:45

标签: javascript html asp.net-mvc asp.net-mvc-5 unobtrusive-validation

我使用@Html.ValidationMessageFor(m => m.Foo)来显示不显眼的验证消息,但是当我在View中多次使用它时,只会显示一条验证消息。

以下是我如何使用@Html.ValidationMessageFor()的示例:

@Html.RadioButtonFor(m => m.Foo, true, new { @id = "FooTrue" })
<label for="FooTrue">Yes</label>
@Html.RadioButtonFor(m => m.Foo, false, new { @id = "FooFalse" })
<label for="FooFalse">No</label>

@Html.ValidationMessageFor(m => m.Foo)

看起来<span>编译成的@Html.ValidationMessageFor(m => m.Foo)元素具有固定的id属性:

<span class="field-validation-error" data-valmsg-for="Foo" data-valmsg-replace="true">
    <span id="Foo-error" class="">
        Please select an option.
    </span>
</span>

在我的重复ValidationMessageFor上明确定义唯一ID属性不起作用:

@Html.ValidationMessageFor(m => m.Foo, "Please select an option", new { @id = "DuplicateValidationMessage" })

有没有办法在我的视图中多次使用@Html.ValidationMessageFor(m => m.Foo)

此外,使用Javascript可能是一个解决方案,还是会混淆jQuery不显眼的验证插件?

0 个答案:

没有答案