javascript - 使用 ajaxSubmit/jQuery 提交多个表单时出现问题

标签 javascript ajax jquery

我有一些代码可以一次在我的页面上提交多个表单:

$('.photo-edit-form form').ajaxSubmit({
     success: function() { console.log('success'); },
     error: function() { console.log('error'); }
});

但是,无论我有多少表格,我都只能打印出一份成功的表格。我发现我可以通过在选定的表单上使用 .each 来修复它,如下所示:

$('.photo-edit-form form').each(function() {
     $(this).ajaxSubmit({
          success: function() { console.log('success'); },
          error: function() { console.log('error'); }
     });
});

这是 ajaxForm 插件的问题还是我对 jQuery 的工作方式有误解?任何输入将不胜感激。

最佳答案

插件的代码行为就像它一次处理任何数字一样,但是it basically comes down to this :

$.ajax(options);

还有 data in that option set comes from .formToArray() which only deals with the first element in the set :

var form = this[0];

所以对于你的问题,是的,这是插件的问题.ajaxSubmit()仅适用于单个 <form>一次,它没有 .each() 在内部就像大多数插件一样。

关于javascript - 使用 ajaxSubmit/jQuery 提交多个表单时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4182675/

相关文章:

jquery json以正确的列顺序动态html表

jQuery 对话框 - 未定义

javascript - 发布和获取相同的 jquery 请求

Javascript AJAX 调用 SpringBoot Controller 并获取 JSON 响应

javascript - jQuery 不调用警报框

php - Cake 1.3 中是否有任何好的/简单的 Ajax 示例而不使用已弃用的助手?

javascript - 如何为特定的 div 应用 canvg() 函数?

javascript - 将数组键推送到自己的数组

javascript - 如何计算位置与距离不同

Javascript 按 element.data 过滤行