我想知道如何在通过ajax注入页面的表单元素上重新绑定验证。
这是呈现给浏览器的局部视图。
<tr>
<td><%= Html.ValidationMessageFor(m => m.FirstName)%><%= Html.EditorFor(m => m.FirstName)%></td>
<td><%= Html.ValidationMessageFor(m => m.LastName)%><%= Html.EditorFor(m => m.LastName)%></td>
<td><%= Html.ValidationMessageFor(m => m.IsAttending)%><%= Html.EditorFor(m => m.IsAttending)%></td>
<td><%= Html.ValidationMessageFor(m => m.Food)%><%= Html.EditorFor(m => m.Food)%></td>
</tr>
我还查看了MicrosoftMvcValidation.debug.js,看看是否有我可以调用的任何函数,我发现了这个;
// register validation
Sys.Application.add_load(function() {
Sys.Application.remove_load(arguments.callee);
Sys.Mvc.FormContext._Application_Load();
});
我已经尝试在ajax调用完成之后以及将标记注入DOM之后调用此代码,但是没有雪茄。
我偶然发现了这个问题,但它只讨论了对通过ajax注入的整个表单进行重新绑定验证,这对我也没有帮助。 mvc2-client-validation-isnt-working-when-getting-form-from-ajax-call
我可能还应该提到我的部分视图在DOM中生成重复的ID。关于如何解决这个问题的一些指示也将非常受欢迎。感谢。