【发布时间】:2014-05-08 06:45:27
【问题描述】:
我在这里遇到过类似的问题,但没有一个直接涉及我正在寻找的问题。所以我有一个带有 target="_blank" 的表单 div。单击输入提交链接时,我希望表单在新选项卡中打开。
我在后台有一些 javascript 代码,它们根据按钮操作表单项以提供不同的选项。单击提交按钮时,我希望表单值与表单一起正确传递并在新选项卡中打开。
如果我禁用 Javascript,表单会在新选项卡中正确打开,因此 Javascript 会阻止新选项卡。如何在通过表单传递选项值的同时正确打开表单?
一些示例代码:
<form id="search" name="search" action="www.search.com" target="_blank" method="post">
...
<input type="submit" name="commit" value="Search" class="button">
还有,为什么 Javascript 会阻止新标签弹出?
【问题讨论】:
-
我实际上不能透露 JS 本身,但它所做的只是根据用户单击的选项操作表单值和样式。提交表单时绝不会调用它,所以不知道它为什么会阻止弹出窗口。
-
老实说,我认为这与 js 相关。根据您的描述做了一些超级快速的事情,这似乎不是问题:jsfiddle.net/hf35X。如果您的 js 完全在操作表单,请确保它不会删除 target="_blank" 部分。作为测试的一部分,您可以通过 js 在表单提交上添加 target=blank 属性 - 看看会发生什么。
-
我正在使用 Drupal 进行构建。已禁用表单 JS 仍然是同样的问题。甚至使用 jQuery 通过 $('#search').get(0).setAttribute('target', '_blank'); 来强制目标。所以似乎其他一些 JS 阻止了新标签
标签: javascript html forms input submit