动态加载窗体时重新连接多个 Ajax.BeginForms

Reconnecting multiple Ajax.BeginForms when dynamically loading the forms

提问人:iCollect.it Ltd 提问时间:7/18/2013 更新时间:7/18/2013 访问量:315

问:

我有一份由多个部分组成的长表格,每个部分都有自己的问题。每个部分都可以通过一个按钮独立保存。<input type="submit" value="Save" />

每个部分都动态加载到页面中(并且有可变数量的部分)。

每个表单都作为 Ajax.Begin() ajax 表单单独编写,但是在动态加载表单时,UnobstrusiveJavaScript 不会绑定提交按钮,它们会执行标准回发。

重新连接提交按钮的 ajax 功能的最简单方法是什么?

ASP.NET-MVC-4 Razor 不显眼的 javascript ajax.beginform

评论

0赞 Cagatay Kalan 9/3/2013
看看我的答案 stackoverflow.com/questions/2183475/...

答:

0赞 iCollect.it Ltd 7/18/2013 #1

在检查了 UnobstrusiveJavaScript 的源代码(非常小)之后,它留下了永久事件处理程序,因此它应该只处理动态加载的页面。.on('submit')

事实证明,主窗体缺少包含 UnobstrusiveJavaScript:

@Scripts.Render("~/bundles/jqueryval")

当这种事情发生时,值得检查小提琴手:)