如果他们得到支持,那么类似的方法将起作用:
$('button').on('click', function(e) {
var form = $(this).parents('form');
e.preventDefault();
if(!form) {
form = $(this);
}
$('#output').val('from '+form.attr('id')+'\n'+form.serialize());
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id='parent'>
<form id='childA'>
<input type='text' placeholder='value of A'/>
<button>Send part A</button>
</form>
<form id='childB'>
<input type='text' placeholder='value of B'/>
<button>Send part B</button>
</form>
<button>Send All</button>
</form>
<br/>
<textarea id='output'></textarea>Run Code Online (Sandbox Code Playgroud)
但是,由于它不受官方支持,因此您可以看到浏览器正在阻止它(关闭假定为开放式的form元素)。一种替代方法是使用单个form但data向各个输入添加属性,以便JavaScript可以收集所需的子字段并POST从中手动构建一个子字段。
| 归档时间: |
|
| 查看次数: |
12505 次 |
| 最近记录: |