当我按下asp.net超链接时,我想在浏览器中打开新选项卡

时间:2011-09-20 09:45:22

标签: javascript asp.net html hyperlink

我想在点击超级链接后打开新标签或弹出窗口,此窗口包含导航网址?

<asp:HyperLink runat="server" NavigateUrl='<%#DataBinder.Eval(Container,"DataItem.Path")%>'>
                        <asp:Image ID="product_image" runat="server" ImageUrl='<%#DataBinder.Eval(Container,"DataItem.Path")%>'
                            Height="20px" Width="20px" />
                    </asp:HyperLink>

此代码在同一个标​​签中打开我希望它在另一个标签或弹出窗口中的网址或任何新想法?

4 个答案:

答案 0 :(得分:3)

尝试使用Target-attribute:

 <asp:HyperLink Target="_blank" />

它将在新窗口或标签中打开,具体取决于浏览器设置。

答案 1 :(得分:1)

您是否可以将target="_blank"附加到<asp:HyperLink />代码?

答案 2 :(得分:1)

下面:

<asp:HyperLink ID="HyperLink1" NavigateUrl="http://www.google.com" runat="server" Target="_blank">HyperLink</asp:HyperLink>

输出HTML:

<a id="HyperLink1" href="http://www.google.com" target="_blank">HyperLink</a>

以上标记的行为如下:

http://jsfiddle.net/6qCYY/

答案 3 :(得分:1)

如上所述,您可以为标记添加目标属性。 如果您需要在页面加载期间动态决定该页面是否在单独的选项卡中打开,那么您可以使用下面的代码块

protected void Page_Load(object sender, EventArgs e)
{
    // ... 
    if (ShouldLinkOpenInNewWindow())
    {
        HyperLink1.Target = "_blank";
    }
    // ...
}