我有两种形式。
<form name="frm1" action="someurl" method="post">
<input type="submit" name="btn1" class="buttons" value="Submit"/>
</form>
和
<form name="frm2">
<input type="submit" name="btn2" value="Submit"/>
</form>
我需要点击“frm2”形式的“btn2”提交表格“frm1”。
答案 0 :(得分:21)
<button type="submit" form="form1" value="Submit">Submit</button>
form
属性指定按钮将提交的表单的id
。
答案 1 :(得分:15)
<input type="submit" name="btn1" id="btn1" value="Submit"/>
$("#btn1").click(function(){
$("#frm1").submit();
}
和
<input type="submit" name="btn2" id="btn2" value="Submit"/>
$("#btn2").click(function(){
$("#frm1").submit();
}
答案 2 :(得分:4)
<强> HTML 强>
<form name="frm1" action="someurl" method="post" id="frm1">
<input type="submit" name="btn1" class="buttons" value="Submit"/>
</form>
<input type="submit" name="btn2" onclick="formSubmit()" value="Submit"/>
<强>的Javascript 强>
<script>
function formSubmit()
{
document.getElementById("frm1").submit();
}
</script>
答案 3 :(得分:2)
考虑HTML:
<form id="target" action="destination.html">
<input type="text" value="Hello there" />
<input type="submit" value="Go" />
</form>
<div id="other">
....
</div>
事件处理程序可以绑定到表单:
$('#target').submit(function() {
alert('Handler for .submit() called.');
return false;
});
点击功能:
$('#other').click(function() {
$('#target').submit();
});
这是链接看看: How can I submit form on button click when using preventDefault()?
答案 4 :(得分:1)
您可以使用ajax在第二个表单之前提交第一个表单:
$('form[name=frm2]').submit(function() {
var form1 = $('form[name=frm1]');
$.ajax({
type: "POST",
url: form1.attr('action'),
data: form1.serialize(),
async: false;
});
});
答案 5 :(得分:0)
我通常会避免使用.submit()函数,因为我几乎总是需要通过.submit()允许我做的响应来做更多的事情。
因此,您提交按钮的非.submit选项必须更改为普通按钮。
$('.btn2').bind('click', function(){
var form1Data = $('#frm1').serialize();
$.ajax({
url : 'someurl',
type : 'post',
datatype : 'json',
data : form1Data,
success : function(json) {
sumbitForm2();
}
});
});
function submitForm2() {
var form2Data = $('#frm2').serialize();
$.ajax({
url : 'urlToSumbitForm1',
type : 'post',
datatype : 'json',
data : form2Data,
success : function(json) {
//do something if you need to
}
});
}