带有两个提交按钮和两个“目标”属性的 HTML 表单

新手上路,请多包涵

我有一个 HTML

该表单只有一个 action="" 属性。

但是我希望有两个不同的 target="" 属性,这取决于您单击哪个按钮来提交表单。这可能是一些花哨的 JavaScript 代码,但我不知道从哪里开始。

如何创建两个按钮,每个按钮都提交相同的表单,但每个按钮都为表单提供不同的目标?

原文由 Stoob 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 436
2 个回答

处理这个问题更合适的是,表单将有一个绑定到一个提交按钮的默认操作,然后绑定到一个普通按钮的替代操作。此处的区别在于,无论提交下的哪一个都将是用户通过按 Enter 提交表单时使用的那个,而另一个只会在用户明确单击按钮时被触发。

无论如何,考虑到这一点,应该这样做:

 <form id='myform' action='jquery.php' method='GET'>
    <input type='submit' id='btn1' value='Normal Submit'>
    <input type='button' id='btn2' value='New Window'>
</form>

使用这个 javascript:

 var form = document.getElementById('myform');
form.onsubmit = function() {
    form.target = '_self';
};

document.getElementById('btn2').onclick = function() {
    form.target = '_blank';
    form.submit();
}

将代码绑定到提交按钮的单击事件的方法在 IE 上不起作用。

原文由 Paolo Bergantino 发布,翻译遵循 CC BY-SA 2.5 许可协议

e.submitEvent.originalEvent.submitter.value

如果您使用表单事件

原文由 Vũ Tiến Lập 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题