你能把文字作为超链接的一部分吗



所以我的代码行看起来像这样,并且作为文本正常工作。但我需要将值添加到超链接

If pt.SelectedValue = "1" Then
litTier.Text = "/link.aspx"
Else
litTier.Text = "link2.aspx"
End If

我的超链接当前看起来像这个

<a href='/link.aspx' onclick="return newWindow2('/link.aspx','300','300');">

当我添加文字时代替/link.aspx,我得到错误"Text"不是"System.Web.UI.HtmlControls.HtmlAnchor"的成员。

您需要的是一个超链接aspx服务器控件,而不是任何文字控件

例如:

<asp:HyperLink id="hyp1" NavigateUrl="/link.aspx" 
 OnClientclick="return newWindow2('/link.aspx','300','300');" runat="server"/>

然后在你的代码后面找到

If pt.SelectedValue = "1" Then
hyp1.NavigateUrl = "/link.aspx"
Else
hyp1.NavigateUrl = "link2.aspx"
End If

当我添加文字来代替/link.aspx时,我会得到错误"Text"不是"System.Web.UI.HtmlControls.HtmlAnchor"的成员。

错误消息(正如您所期望的)是正确的:Text不是可用的属性。请改用InnerTextInnerHtml

http://msdn.microsoft.com/en-US/library/system.web.ui.htmlcontrols.htmlanchor_properties(v=vs.80).aspx

但听起来你还有更多的问题。例如,这个文字在哪里?

您应该:

  • 使用<asp:Hyperlink><a runat="server">在标记中声明超链接
  • 使用适当的属性设置URL
  • 使用适当的属性设置文本
  • 使用attributes集合设置其他客户端属性(如onclick

最新更新