我有一个表单,上面有几个不同的提交按钮,所有这些按钮都使用相同的帖子数据做不同的事情。
让我们说,为简单起见,表格看起来像这样:
<form method="post">
<input type="hidden" name="ids" value="1,2,3,4" />
<input type="submit" id="picking" name="picking" value="Picking" />
<input type="submit" id="shipping" name="shipping" value="Shipping" />
<input type="submit" id="invoice" name="invoice" value="Invoice" />
</form>
当表单提交给自己并且我按下提交按钮的服务器端时,从POST数据构建一个URL,然后执行PHP重定向到我需要去的地方。这很好。
但是,我正在寻找将其数据发布到新窗口的表单,但仅在单击“发票”时。这排除了向表单添加target="_blank"
,因为其他2个按钮也会提交到新页面。
我也不能将表单分成3种不同的形式,因为数据比上面的要复杂得多,而且很多都是由用户输入的。
有没有办法使用JavaScript / JQuery来做到这一点?如果是的话,我会从哪里开始?
由于
答案 0 :(得分:4)
单击发票时,您是否可以在表单中添加目标空白?:
$("#invoice").click(function(){
$('#form_id').attr('target', '_blank');
});
或:
$(document).on("click","#invoice",function(){
$('#form_id').attr('target', '_blank');
});
答案 1 :(得分:0)
尝试将点击处理程序添加到正确的提交按钮。
$('#invoice').on('click', function(){
//doStuff
});
这将允许您控制#invoice的操作而不影响其他人。