我有一个大页面/表单划分为选项卡,现在的要求是,每个选项卡都应该有一个保存按钮,该按钮将提交该选项卡中的字段。并且还应该有一个全局保存按钮,用于保存所有选项卡中的数据。
我这样做的想法是,为每个选项卡制作单独的表单,并使用jquery serialize来发布它们,但是有些表单具有图像上传和ckeditor字段,这些字段不能很好地与jquery配合使用。
任何想法,关于解决这个问题的最佳方法是什么?
一个低影响的 appoarch 是保留你的 3 个表格。然后将您的"表单合并"附加到全局表单的提交元素:
对于 HTML:
<form id="form1"> ... </form>
<form id="form2"> ... </form>
<form id="global"></form>
.JS:
$("#global").submit(function(e){
var $ch1 = $("#form1").children();
var $ch2 = $("#form2").children();
$(this).append($ch1).append($ch2);
//Let the form get submitted...
});
使用 jQuery,您可以逐个提交每个表单
$("#globalsubmit").submit(function(e){
//simply submit all the forms one by one
$("#form1").submit();
$("#form2").submit();
return false;
});
或找到所有表格并立即提交
$("#globalsubmit").submit(function(e){
$("form").each(function() { $(this).submit(); });
return false;
});
没有jQuery。以下是您可能需要遵循的几个步骤。
- 提交表单,不处理数据,而是存储在会话中。
- 从会话中的所有表单中收集所有数据,最后批量提交数据。