2010-06-16 109 views
1

我有一个label,我想添加一个链接。添加链接到标签ASP.NET(VB)

我想用javascript像:

MyLabel.Attributes.Add("`onclick`", "javascript:`SOME_CODE`") 

我必须加入(SOME_CODE)将用户重定向到另一个链接。

谢谢。

+0

有答复回答你的问题? – 2010-06-17 16:13:04

回答

3

您是否尝试过:window.location = 'http://google.com'? 你想为此使用Javascript,而不仅仅是HyperLink控件的任何特定原因?

更新:

您可以使用正常的一个标签<a href="http://google.com">link</a>或使用ASP.Net HyperLink控件:

这是标记:

<asp:HyperLink ID="MyHyperLinkControl" NavigateUrl="http://google.com" runat="server" /> 

这是如果你想从代码隐藏中添加它:

HyperLink link = new HyperLink(); 
link.NavigateUrl = "http://google.com"; 

parentControl.Controls.Add(link); 

其中parentControl是您想要将其添加到的容器,例如表格或面板中的单元格。

有关如何将控件添加到面板

+0

它的工作。但是我怎样才能使用HyperLink控件? – 2010-06-16 22:16:27

+0

我认为'window.location.href'比不同类型的浏览器之间的'window.location'更可靠。 – 2010-06-16 23:09:43

+1

@Paperjam,你是正确的window.location.href将是更正确的,因为window.location基本上是包含其他属性,其中包括href的对象。但是,window.location可以用作window.location.href的简写。 – 2010-06-16 23:16:18

0
<a href="http://google.com" >Go to Google</a> 
1

只需使用一个普通的锚标记(<a >)更多信息,请参阅here,而是把标签锚(反向不严格有效的html)。如果您不希望它每次都显示为链接,则可以通过省略href属性来完成此操作。这是很容易的,象这样一个正常的<asp:HyperLink>服务器控件做:

<asp:HyperLink id="..." runat="server"><asp:Label ... ></asp:Label></asp:HyperLink> 

现在,href属性将只有当你实际设置在你的代码NavigateUrl属性渲染。你也可能发现使用<asp:HyperLink>完全取代了标签的需求。

0

如果有什么你previous question,使用Hyperlink控制,而不是一个Label

Dim Hyperlink1 As New Hyperlink 
    Hyperlink1.Text = "XYZ" 
    Hyperlink1.NavigateUrl = "http://www.google.com" 

    Dim Literal1 As New Literal 
    Literal1.Text = "<br />" 

    ' Add the control to the placeholder 
    PlaceHolder1.Controls.Add(Hyperlink1) 
    PlaceHolder1.Controls.Add(Literal1)