我在Default.aspx里面设了一个Label, id=lblLink在Default.aspx.cs里面令:
lblLink.Text= "<asp:HyperLink ID=\"HyperLink1\" runat=\"server\" NavigateUrl=\"http://sina.com.cn\">HyperLink</asp:HyperLink>";
怎么运行后,发现没有链接啊?而如果我令:
lblLink.Text="<a herf="http://sina.com.cn">Link</a>";就可以链接
这是为什吗?

解决方案 »

  1.   

    用hyperlink不是这样写直接用它的NavigateUrl
    不用lblLink.Text了
      

  2.   

    HyperLink is Web Server Control...Label is Web Server Control too...<a /> is Html tag...lz要补补基础知识了...
      

  3.   

    因为是对象,你怎么能用文本属性呢??你可以声明一个hyperlink的实例在一个你需要的地方进行add....
      

  4.   

    asp:HyperLink 不是有效的html标签,他必须经过服务器的处理才能转成<a>标签。
    你将 "<asp:HyperLink ID=\"HyperLink1\" runat=\"server\" NavigateUrl=\"http://sina.com.cn\">HyperLink</asp:HyperLink>";
    赋值给label,他当然不会显示链接了。
    你可以写成这样:<asp:HyperLink ID="HyperLink1" runat="server" text="hyperlink">
    然后在后台代码给他赋值:HyperLink1.NavigateUrl = "http:...."
      

  5.   

    HyperLink是Web服务器控件,在客户端浏览器生成的就是a标记<a href="..."></a>是Html标记大多数情况下,用a标记即可,HyperLink唯一有价值的功能就是既然它是服务器控件,所以具有可编程性,也就是说你可以决定其是否可见(Visible属性),你可以用代码来动态改变它的NavigateUrl属性(客户端生成的就是href)
      

  6.   

    HyperLink是Web服务器控件,在客户端浏览器生成的就是a标记<a href="..."></a>是Html标记大多数情况下,用a标记即可,HyperLink唯一有价值的功能就是既然它是服务器控件,所以具有可编程性,也就是说你可以决定其是否可见(Visible属性),你可以用代码来动态改变它的NavigateUrl属性(客户端生成的就是href)我觉得 amandag(高歌) 说的很好!