输入按钮target =“_ blank”不会导致链接加载到新窗口/选项卡中

时间:2013-06-20 07:08:47

标签: html button input target

我有一个带有输入按钮的HTML文件。 这只是一个示例按钮,但它包含所有必要的代码信息:

<input type="button" onClick="parent.location='http://www.facebook.com/'" value="facebook" target="_blank">

由于某种原因,它没有加载到新的窗口/标签中。

13 个答案:

答案 0 :(得分:36)

使用formtarget="_blank"为我工作

<input type="button" onClick="parent.location='http://www.facebook.com/'" value="facebook" formtarget="_blank">

浏览器兼容性:来自caniuse.com
IE :10+ | 边缘:12+ | Firefox :4+ | Chrome :15+ | Safari / iOS :5.1+ | Android :4 +

答案 1 :(得分:8)

你需要像这样做......

<a type="button" href="http://www.facebook.com/" value="facebook" target="_blank" class="button"></a>

并添加基本的CSS如果你想让它看起来像btn ..就像这样

    .button {
    width:100px;
    height:50px;
    -moz-box-shadow:inset 0 1px 0 0 #fff;
    -webkit-box-shadow:inset 0 1px 0 0 #fff;
    box-shadow:inset 0 1px 0 0 #fff;
    background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #ffffff), color-stop(1, #d1d1d1) );
    background:-moz-linear-gradient( center top, #ffffff 5%, #d1d1d1 100% );
 filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#d1d1d1');
    background-color:#fff;
    -moz-border-radius:6px;
    -webkit-border-radius:6px;
    border-radius:6px;
    border:1px solid #dcdcdc;
    display:inline-block;
    color:#777;
    font-family:Helvetica;
    font-size:15px;
    font-weight:700;
    padding:6px 24px;
    text-decoration:none;
    text-shadow:1px 1px 0 #fff
}



  .button:hover {
    background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #d1d1d1), color-stop(1, #ffffff) );
    background:-moz-linear-gradient( center top, #d1d1d1 5%, #ffffff 100% );
 filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#d1d1d1', endColorstr='#ffffff');
    background-color:#d1d1d1
}
.button:active {
    position:relative;
    top:1px
}

目标仅适用于href标签..

答案 2 :(得分:6)

正确答案:

<form role="search" method="get" action="" target="_blank"></form>

所有主流浏览器都支持:)

答案 3 :(得分:4)

面对类似的问题,我这样解决了:

\

使用 _blank 更改 _top ,如果这是您需要的。

答案 4 :(得分:3)

targetinput元素上无效。

在这种情况下,您的重定向是通过Javascript完成的,因此您可以让脚本打开一个新窗口。

答案 5 :(得分:2)

input元素不支持target属性。 target属性适用于a标记,这是应该使用的位置。

答案 6 :(得分:2)

  

formtarget属性仅用于type =&#34;提交&#34;。

的按钮

这是来自reference

以下是使用 JavaScript 的答案:

<input type="button" onClick="openNewTab()" value="facebook">

<script type="text/javascript">
    function openNewTab() {
        window.open("http://www.facebook.com/");
    }
</script>

答案 7 :(得分:1)

而不是

  

的onClick = “parent.location = 'http://www.facebook.com/'”

尝试使用

  

的onClick = “的 window.open = 'http://www.facebook.com/'”   的onClick = “window.open( 'http://www.facebook.com/', '实')”

答案 8 :(得分:1)

请试试这个 它为我工作

的onClick =&#34;的 window.open (&#39; http://www.facebook.com/&#39;&#39;实&#39;)&#34;

<button type="button" class="btn btn-default btn-social" onClick="window.open('http://www.facebook.com/','facebook')">
          <i class="fa fa-facebook" aria-hidden="true"></i>
</button>

答案 9 :(得分:0)

<form target="_blank">
    <button class="btn btn-primary" formaction="http://www.google.com">Google</button>
</form>

答案 10 :(得分:0)

使用JQUERY的另一个解决方案是编写一个在用户单击按钮时调用的函数。此函数创建一个新的<A>元素,其中target ='blank',将其附加到文档中,“点击”它然后将其删除。

就用户而言,他们点击了一个按钮,但在幕后,点击了一个带有target ='_ blank'的<A>元素。

<input type="button" id='myButton' value="facebook">

$(document).on('ready', function(){
     $('#myButton').on('click',function(){
         var link = document.createElement("a");
         link.href = 'http://www.facebook.com/';
         link.style = "visibility:hidden";
         link.target = "_blank";
         document.body.appendChild(link);
         link.click();
         document.body.removeChild(link); 
     });
});

JsFiddle:https://jsfiddle.net/ragDaniel/tf991u4g/2/

答案 11 :(得分:0)

只需将javascript window.open函数与“ _blank”中的第二个参数一起使用

<button onClick="javascript:window.open('http://www.facebook.com', '_blank');">facebook</button>

答案 12 :(得分:0)

在类似的用例中,这对我有用...

<button onclick="window.open('https://www.w3.org/', '_blank');">  My Button </button>