2013-02-20 89 views
1

所以我的代码隐藏看起来像这样,并正在工作正确的文本。但我需要的价值添加到超链接你可以把文字作为超链接的一部分吗?

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的添加文字 我得到的错误“文本'不是'System.Web.UI.HtmlControls.HtmlAnchor'的成员。

+1

请读您的文章,问问自己是否不分享任何人你的头脑可以理解你正试图解决的问题? – Oded 2013-02-20 22:12:05

+0

我尝试用替换/link.aspx,并且出现错误“'Text'不是'System.Web.UI的成员。 HtmlControls.HtmlAnchor”“。 – Michelle 2013-02-20 22:13:10

回答

2

你需要的是一个超链接的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 
+0

非常感谢你! – Michelle 2013-02-20 22:27:29

1

当我添加文字而不是/link.aspx时,我得到错误'文本' 不是'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声明中您的标记中的超链接(如onclick)使用属性集合
+0

你提出了很多好的观点,非常感谢你的时间。 是现在的样子,现在的错误是'InnerText'不是'System.Web.UI.WebControls.Literal'的成员。 对不起,我是一个全新的人,并试图弄明白代码。 – Michelle 2013-02-20 22:24:02

相关问题