有没有办法提交表单,然后打开一个新窗口?

时间:2015-04-22 01:23:55

标签: javascript form-submit new-window

我希望能够在不使用window.open的情况下执行此操作,因为我被告知被弹出窗口拦截器捕获。是否可以使用javascript以某种方式改变提交按钮(比如添加一个target =“_ blank”)或其他东西来实现这个目的?

2 个答案:

答案 0 :(得分:1)

如果因用户操作而调用了window.open,则浏览器不会阻止您的新窗口。

示例:

// Find the button you want to bind to 
var button = document.getElementById('test');
// Add a click event listener
button.addEventListener('click', function(){
    window.open('http://www.google.com'); 
});

所有主流浏览器都允许上述内容打开新窗口/标签。

JSFiddle

答案 1 :(得分:0)

您可以通过在表单上放置onsubmit来控制提交表单时发生的情况,也可以使用<a target="_blank">作为表单提交按钮。

如果您选择第一个选项:

<form onsubmit="formSubmit()"> </form>
<script>function formSubmit(){code here}</script>

或第二个选项:

<form id="form">
<!--place your inputs here -->
<a href="google.com" target="_blank" onclick="document.getElementById('form').submit()"></a>
</form>