加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

使用HtmlAnchor或ASP.NET HyperLink作为导航页内命名锚点的锚标

发布时间:2020-12-16 00:29:33 所属栏目:asp.Net 来源:网络整理
导读:我试图渲染链接到页面内的一个命名锚点的简单超链接,例如: a href="#namedAnchor"scroll to down/aa name="namedAnchor"down/a 问题是,当我使用ASP.NET控件,如asp:HyperLink或HtmlAnchor时,href =“#namedAnchor”被渲染为href =“controls /#namedAnc
我试图渲染链接到页面内的一个命名锚点的简单超链接,例如:
<a href="#namedAnchor">scroll to down</a>

<a name="namedAnchor">down</a>

问题是,当我使用ASP.NET控件,如asp:HyperLink或HtmlAnchor时,href =“#namedAnchor”被渲染为href =“controls /#namedAnchor”(其中,控件是包含该锚点的用户控件的子目录是)。这是控件的代码,使用两种类型的锚控件,它们都有同样的问题:

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Test.ascx.cs" Inherits="TestWebApplication1.controls.Test" %>

<a href="#namedAnchor" runat="server">HtmlAnchor</a>

<asp:HyperLink NavigateUrl="#namedAnchor" runat="server">HyperLink</asp:HyperLink>

生成的源代码如下所示:

<a href="controls/#namedAnchor">HtmlAnchor</a>

<a href="controls/#namedAnchor">HyperLink</a>

我真的只想要:

<a href="#namedAnchor">HtmlAnchor</a>

<a href="#namedAnchor">HyperLink</a>

我正在使用HtmlAnchor或HyperLink类,因为我想对代码中的其他属性进行更改。我不想为此需求引入自定义Web控件,因为我正在追求的要求不足以证明放弃传统的ASP.NET链接控件。似乎我应该能够使用ASP.NET链接控件来生成所需的链接。

解决方法

而不是使用NavigateUrl属性,只需使用href属性
<asp:HyperLink href="#namedAnchor" runat="server">HyperLink</asp:HyperLink>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读