您正在尝试实现HTML 不支持的嵌套表单。
每个表单都必须包含在一个 FORM 元素中。一个文档中可以有多个表单,但 FORM 元素不能嵌套。
解决方法
您可以通过对 HTML 和 JavaScript 进行一些更改来实现此功能。(不使用 html 表单)
步骤1. 使用div
标签创建两个表单,如下所示(不要使用表单标签)
<div id="form_a">
<input.../>
<div id="form_b">
<input.../>
<input.../>
<button id="submit_b">Submit B</button>
</div>
<input.../>
<button id="submit_a">Submit A</button>
</div >
2.添加JQuery和Ajax提交各个表单数据
<script>
// Submit form A data
$('#submit_a').click( function() {
$.ajax({
url: 'ajax-url',
type: 'post',
dataType: 'json',
data: $('#form_a input').not( "#form_b input" ).serialize(),
success: function(data) {
// ... do something with the data...
}
});
});
// Submit form B data
$('#submit_b').click( function() {
$.ajax({
url: 'ajax-url',
type: 'post',
dataType: 'json',
data: $('#form_b input').serialize(),
success: function(data) {
// ... do something with the data...
}
});
});
</script>