如何通过转发器添加锚标签并跳转到页面上的特定位置?

时间:2014-09-08 11:01:20

标签: c# html anchor

我想使用转发器动态填充锚点并动态链接到锚点 我知道在统计案例中我们可以这样做:

<a href="#anchor">Link Text</a>

和锚:

<a name="anchor"></a>

现在,为了动态创建链接,我使用:

<asp:Repeater ID="LinkRepeater" runat="server">
 <ItemTemplate>
    <asp:HyperLink ID="HyperLink1" runat="server"  class="TopMenuBarLink" NavigateUrl='<%# Eval("Link")%>'>
      <%# Eval("Title")%>
    </asp:HyperLink>
  </ItemTemplate>
</asp:Repeater>

但是当我在网站上运行程序时,使用inspect元素我得到了这个链接:

<a id="_ctl0_viewCompanies_LinkRepeater_HyperLink1_0" class="TopMenuBarLink" href="Mypath/MyAnchor">My title text</a>

我如何以正确的形式获得它:

 <a id="_ctl0_viewCompanies_LinkRepeater_HyperLink1_0" class="TopMenuBarLink" href="#MyAnchor">My title text</a>

2 个答案:

答案 0 :(得分:1)

您是否有特定原因要使用服务器控件来处理超链接?为什么不使用普通的锚元素。

<asp:Repeater ID="LinkRepeater" runat="server">
 <ItemTemplate>
    <a class="TopMenuBarLink" href='#<%# Eval("Link")%>'>
      <%# Eval("Title")%>
    </a>
  </ItemTemplate>
</asp:Repeater>

答案 1 :(得分:0)

我会尝试这个(在ASP.Net代码括号前添加#符号):

NavigateUrl='#<%# Eval("Link")%>'