benannten Anker in-Seite navigiert Ich versuche, einen einfachen Hyperlink zu machen, die zum Beispiel innerhalb der Seite zu einem benannten Anker verbindet,:Mit Htmlanchor oder ASP.NET HyperLink für Anker-Tag, das
<a href="#namedAnchor">scroll to down</a>
<a name="namedAnchor">down</a>
Das Problem Wenn ich ein ASP.NET-Steuerelement wie asp:HyperLink
oder HtmlAnchor
verwende, wird href="#namedAnchor"
als href="controls/#namedAnchor"
gerendert (wobei controls
das Unterverzeichnis ist, in dem sich das Benutzersteuerelement befindet, das den Anker enthält). Hier ist der Code für die Steuerung, mit zwei Arten von Ankern Kontrollen, die beide das gleiche Problem haben:
<%@ 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>
Die erzeugte Quelle wie folgt aussieht:
<a href="controls/#namedAnchor">HtmlAnchor</a>
<a href="controls/#namedAnchor">HyperLink</a>
ich wirklich nur wollen:
<a href="#namedAnchor">HtmlAnchor</a>
<a href="#namedAnchor">HyperLink</a>
Ich verwende die HtmlAnchor
oder HyperLink
Klasse, weil ich Änderungen an anderen Attributen im Code hinter machen möchte. Ich möchte kein benutzerdefiniertes Websteuerelement für diese Anforderung einführen, da die Anforderung, die ich verfolge, nicht so wichtig ist, dass die traditionellen ASP.NET-Linksteuerelemente aufgegeben werden könnten. Es scheint, dass ich in der Lage sein sollte, die ASP.NET-Linksteuerelemente zu verwenden, um den gewünschten Link zu generieren.
Mögliche Duplikat [asp.net Benutzersteuerung, immer Htmlanchor Entschlossenheit href = "#"] (http://stackoverflow.com/questions/1489332/asp -net-user-control-getting-htmlanchor-resolve-to-href) – zzzzBov