Как вы устанавливаете атрибут href тега привязки, который находится внутри ретранслятора в коде позади?

#c# #asp.net

#c# #asp.net

Вопрос:

обычно on использует следующее :-

aspx страница:-

 <a ID="a1" href="javascript:void(0);">Link1 </a>
  

код позади:-

 a1.HRef="www.mySite.com/mypage.aspx";
  

как вы устанавливаете этот атрибут HRef в случае, если тег привязки находится внутри ретранслятора?

Комментарии:

1. круто .. спасибо всем за ответ 🙂

Ответ №1:

Например, в ItemDatabound событии:

 protected void rptData_ItemDataBound(object source, RepeaterCommandEventArgs e)
{
    HtmlAnchor a1 = (HtmlAnchor)e.Item.FindControl("a1");
    a1.HRef = "www.mySite.com/mypage.aspx";
}
  

Кроме того, не забудьте поставить runat="server" на эту привязку

 <a ID="a1" runat="server" href="javascript:void(0);">Link1 </a>
  

Ответ №2:

Вы можете сделать это в событии ItemDataBound.

Проверьте: http://www.codeguru.com/csharp/.net/net_asp/tutorials/article.php/c12065

Ответ №3:

Сначала вам нужно создать серверную часть управления, поместив runat="Server"

     <a runat="Server" ID="a1" href="javascript:void(0);">Link1 </a>

protected void rptOuter_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
    if ((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem))
    {
       // Find your anchor here
    }
}
  

Ответ №4:

Вы можете сделать это в событии ItemDataBound вашего ретранслятора:

 ((HtmlAnchor)e.Item.FindControl("a1")).HRef = "www.mySite.com/mypage.aspx";