我有一组我正在尝试显示的对象,但ValidationMessageFor生成的范围不包含所有验证属性:
<span class="field-validation-error">This field is required</span>
而不是:
<span class="field-validation-error" data-valmsg-replace="true" data-valmsg-for="Questions[0].SingleAnswer"></span>
这就是我生成html的方式:
<fieldset id="dr_profileUpdates">
@Html.EditorFor(model => model.Questions)
</fieldset>
这是我的编辑模板:
@Html.ValidationMessageFor(model => model.SingleAnswer)
@Html.TextBoxFor(model => model.SingleAnswer, new { @class = "textBoxDefault" })
验证有效,但是在填写文本框并将其聚焦之后,跨度不会消失 - 我认为这是因为跨度无法正确生成
感谢任何帮助。
编辑:实际上看来,在回发到服务器并返回局部视图(假设ModelState无效)后,这些属性不再生成 - 它似乎只影响ValidationMessage。有什么想法吗?
谢谢,
答案 0 :(得分:0)
尝试在剃刀文件上添加
@{
Html.EnableUnobtrusiveJavaScript();
}