我正在同时发送两个表单,但我的脚本中有错误。我研究了错误 - 未捕获的TypeError:对象#的属性'submit'不是函数。他们告诉我要添加一个提交按钮,但这里有一个提交按钮就是我的表格
<form name="form1" id="form1" method="post" action="page1.php">
<input type="hidden" name="pt" id="pt" value="<?=$b64string?>" style="width:800px; padding: 10px;">
<input type="submit" value="submit" name="submit"/>
</form>
<form name="form2" id="form2" method="post" action="page2.php">
<input type="hidden" name="signature" value="<?=$_sign?>"/>
<input type="submit" value="submit" name="submit">
</form>
<span onclick="submitBoth();" style="cursor:pointer;"><img src="image1.png"></span>
这是我的jquery:
jQuery.post("form2.php", jQuery("#form2").serialize(), function(data){
if(data.trim()=='valid'){
document.form1.submit();
}
});
答案 0 :(得分:0)
你使用'form2'作为提交网址,这是正确的吗?
jQuery.post("form2", jQuery("#form2").serialize() ... etc
jqery.post的第一个参数需要是一个网址。
答案 1 :(得分:0)
那么为什么不这样使用smth?
jQuery.post("form2.php", jQuery("#form2").serialize(), function(data){
// you sure, that response will be a string, right?
if(data.trim()=='valid'){
jQuery.post("form1.php", jQuery("#form1").serialize(), function(data){
// todo: postprocess form1.php responce
});
}
});
抱歉以前的评论标记
答案 2 :(得分:0)
我使用了N.B的想法,但我通过触发提交按钮jQuery('#submit1').trigger('click');
来改变它!谢谢!
答案 3 :(得分:0)
您可以使用此
function submitBoth(){
$.post('form1.php',$('form[name=form1]').serializeArray(),function(){
$('form[name=form2]').submit();
});
}