您有什么想法可以使用 JQuery 的延迟方法和一个函数来检测所有更改的表单并将每个表单作为 Ajax 帖子提交吗?
如果我只列出大量表单提交,我可以得到同样的结果,但如果我使用......
$('form.changed').each(function(){
return $(this).submitWithAjax();
});
我正在尝试使用的代码的完整版本在这里......在 JS 小提琴
提前致谢!
使用“.map()”代替“.each()”:
var deferreds = $('form.changed').map(function(i, elem) {
return $(this).submitWithAjax();
});
$.when.apply(null, deferreds.get()).then(function() { ... });
“$.when()”让你捆绑一堆延迟对象并等待它们全部成功(或者任何一个失败——注意其中的区别)。它通常允许任意数量的参数,但由于我们有一个数组,所以我使用了“apply()”。
请注意,我只是稍微使用了这个东西,所以请阅读 jQuery API 文档来仔细检查:-)edit-同样在重新阅读你的问题后,我可能误解了你。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)