Jquery/javascript方式发送50个表单,就像发送1个表单一样
Jquery/javascript way send 50 forms as if it was 1 form?
是否有Jquery方法可以像发送1个表单一样发送50个表单?
<form><input name="1"></form>
<form><input name="2"></form>
<form><input name="3"></form>
<form><input name="4"></form>
就好像是:
<form><input name="1">
<input name="2">
<input name="3">
<input name="4"></form>
像这样发送它,包括所有输入:
document.forms[0]
您可以构建一个包含其他50个表单值的新表单:
var $form = $(document.createElement('form'));
$('form :input').clone().appendTo($form);
现在,$form
包含所有的输入。
通过序列化发送表单数据。
<html>
<head>
<title>36373219</title>
<script type="text/javascript" src="assets/js/jquery-2.1.4.js"></script>
</head>
<body>
<form class="form" id="f1" >
<input name="f1_inp_1" value="1">
<input name="f1_inp_2" value="2">
</form>
<form class="form" id="f2" >
<input name="f2_inp_1" value="1">
<input name="f2_inp_2" value="2">
</form>
<form class="form" id="f3" >
<input name="f3_inp_1" value="1">
<input name="f3_inp_2" value="2">
</form>
<button id="fire">Fire</button>
</body>
<script type="text/javascript">
$('#fire').on('click', preparesend);
function preparesend(event)
{
sendform(event);
}
function sendform(event){
event.stopPropagation(); // Stop stuff happening
event.preventDefault(); // Totally stop stuff happening
var data = new FormData();
$('form').each(function(key,value) {
data.append( key, $(this).serialize());
});
$.ajax({
url: 'get_response.php',
type: 'POST',
data: data,
cache: false,
processData: false,
contentType: false,
success: function(data, textStatus, jqXHR)
{
alert(data);
}
});
}
</script>
</html>
相关文章:
- 单个页面上有多个标记表单
- jquery mobile上多个页面上的一个表单
- 如何使用单个表单填写多个表单
- 一键提交(阻止默认)多个表单
- 在servlet中提交两个表单
- jquery从2个json字符串构建一个复选框表单
- 通过Ajax一键提交多个表单
- 填写表单后替换两个变量
- 我如何让我的脚本连续提交两个表单
- Small Javascript从动态表单中删除多个元素的问题
- 如何将jsp表单传递到两个页面
- 通过单独提交处理多个表单
- 页面上的2个表单带有JS验证-其中一个抛出电子邮件验证错误
- 在一次点击中发布到两个表单 JavaScript
- 一个具有两个图像按钮的表单在只能按下一个按钮的情况下发送两个按钮值
- 在另一个可观察量完成后触发第二个表单提交单击
- 使用一个Javascript函数提交多个表单可以在FF中工作,而不需要其他浏览器
- Jquery表单-两个按钮-一个使用ajax,一个不使用
- 避免表单多个提交,并在完成后重新启用
- PHP表单- 2个按钮(一个销毁会话和重新加载页面和一个继续到下一页)