我的主网页上有很多A html标签。我想在运行时使用代码替换它们的HREF值。怎么做?所有标签都标有runat =“server”。
答案 0 :(得分:2)
您可以使用AncorTag HTML Control的HRef属性进行更改。
像这样:<a id="anchor1" runat="server"></a>
代码
void Page_Load(object sender, EventArgs e)
{
anchor1.HRef = "http://www.microsoft.com";
}
答案 1 :(得分:2)
HtmlAnchor MyAnchor = (HtmlAnchor)e.Item.FindControl("YourAnchorID");
MyAnchor.HRef = "mypage.aspx";
答案 2 :(得分:2)
您必须遍历ControlsCollection
中的所有控件并更新Href
类型的所有控件的HtmlAnchor
属性,如下所示:
private void UpdateTags(Control page)
{
foreach (Control ctrl in page.Controls)
{
if (ctrl is HtmlAnchor)
{
((HtmlAnchor)ctrl).HRef = "myNewlink";
}
else
{
if (ctrl.Controls.Count > 0)
{
UpdateTags(ctrl);
}
}
}
}
答案 3 :(得分:1)
您应该为其指定ID,然后更改Href
属性。
<a runat="server" id="link1">link 1</a>
然后:
link1.HRef = "http://stackoverflow.com";
答案 4 :(得分:0)
你也可以制作一个CustomControl,扩展Hyperlink
- 类并将一些逻辑放入其中。
我们将它用于自定义超链接,以将Trackingdata添加到某些链接。