在新窗口中打开表单提交而不阻止弹出窗口

cbe*_*ier 5 javascript forms jquery popup

我尝试在新窗口/选项卡中打开表单提交的结果。用户在下拉列表中选择一个选项后,将执行提交。

$(function() {
  $('select').change(function() {
    $(this).parents('form').submit();
  });
});
Run Code Online (Sandbox Code Playgroud)
<!DOCTYPE html>
<html>
  <head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
  </head>
  <body>
    <form action="/result.html" method="post" target="_blank">
      <select>
        <option val="1">Opt 1</option>
        <option val="2">Opt 2</option>
      </select>

      <input type="submit" value="Submit" style="display: none;">
    </form>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

经过一些研究,我使用了这个实现。新窗口/提交不会自动执行。相反,我在交互后执行提交(选择字段中的更改)。此外,中间没有其他事件(例如 ajax 调用)。我的理解是:脚本从受信任的事件打开新窗口,弹出窗口阻止程序不应阻止此操作。但这正是发生的事情。

即使是上面的简单实现,目前也会触发 Google Chrome(Mac,63.0)和 Firefox(57.0.3)中的弹出块。

现在有没有办法在新窗口中打开表单结果而不在白名单上?