Javascript循环收集页面上的所有表单

Javascript loop to collect all forms on page

本文关键字:表单 循环 Javascript      更新时间:2023-09-26

我在尝试一次提交页面上的所有表单时遇到了严重的问题。每个表单(可以有1到100的任何位置)都是使用mvc3的局部视图生成的。每个表单都是使用@using(Ajax.BeginForm….在JS中的通用"保存"按钮事件处理程序上生成的,我有以下代码:

    var formsCollection = document.getElementsByTagName("form");
                for (var i = 0; i < formsCollection.length; i++) {
                    formsCollection[i].submit();
                }

现在,令人困惑和不安的是,正如所写的那样,它只将最后一个表单保存到数据库中。然而,当我在循环中发出警报时,两人都得救了!

更为复杂的是,当我单击常规的"保存"按钮时,浏览器会跳转到一个空白页面。现在,我在处理表单的控制器中确实有"return new EmptyResult()",但如果我单击表单中的各个保存按钮,它不会转到空白页。

任何指向正确方向的指针都将不胜感激。

因为您有一个竞赛条件。你同时提交了两件事,只有其中一件能成功。

你需要重新思考你的设计。