我有一个带有两个提交按钮的表单。我想发生的事情是,当单击第一个按钮时,它将在标签本身上提交。如果单击第二个按钮,它将继续进行新标签。
html:
<form id="frm" action="" method="post" target="_blank">
<input type="text" value="data" name="data">
<input type="submit" name="first" id="first" value="Self"/>
<input type="submit" name="second" id="second" value="Tab"/>
</form>
javaScript:
$('form#frm').submit(function(){
var open_new_tab = false;
if($('#second').click){
open_new_tab = true;
}
if ( open_new_tab ) {
alert('opening to new tab');
$('form#frm').attr('target', '_blank');
}
else{
alert('opening to self_page');
$('form#frm').attr('target', '_self');
}
});
请检查此小提琴:两种表格的提交按钮
NOTE :我想将表单中的一些数据传递到新标签或标签本身中。
您已经快到了,首先,您需要通过定义外部您的事件处理程序,然后在全局范围中提供open_new_tab
,然后在单击时重新定义变量任一个按钮的事件。然后,您可以在提交处理程序中检查值:
var open_new_tab = false; // variable now available in global scope
$('#second').click(function(){
open_new_tab = true;
});
$('#first').click(function() {
open_new_tab = false;
});
$('form#frm').submit(function(){
if (open_new_tab) {
alert('opening to new tab');
$(this).attr('target', '_blank');
} else{
alert('opening to self_page');
$(this).attr('target', '_self');
}
});
小提琴