首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >target="_blank“无法打开新窗口

target="_blank“无法打开新窗口
EN

Stack Overflow用户
提问于 2018-06-03 07:32:48
回答 1查看 115关注 0票数 0

Target=_blank不会打开新窗口,只会在同一窗口中导航到新页面,如下图所示:

代码语言:javascript
复制
<form onSubmit="return process();" target="_blank"> 
<input type="text" name="url" id="url"  placeholder="Product ID"> <input type="submit" value="Search">
</form> 
<script>
function process(){
    var url= "https://myurl.com/products/" + document.getElementById("url").value.trim();
    location.href=url; return false;
}
</script> 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-03 07:37:37

当您单击该按钮时,代码将立即触发,因此您的代码将导航到同一选项卡中的另一页。

仅当表单有要向其发送数据的操作时,target="_blank"才起作用。

请改用window.open(url)

代码语言:javascript
复制
function process() {
  var url = "https://myurl.com/products/" + document.getElementById("url").value.trim();
  window.open(url);
  return false;
}
代码语言:javascript
复制
<form onSubmit="return process();" target="_blank">
  <input type="text" name="url" id="url" placeholder="Product ID"> <input type="submit" value="Search">
</form>

或者在您的流程函数中,将url分配给表单的操作属性,然后删除return false

我将该窗体命名为f

代码语言:javascript
复制
function process() {
  var url = "https://myurl.com/products/" + document.getElementById("url").value.trim();
  document.f.setAttribute('action', url);

}
代码语言:javascript
复制
<form onSubmit="return process();" name="f" target="_blank">
  <input type="text" name="url" id="url" placeholder="Product ID"> <input type="submit" value="Search">
</form>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50662056

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档