Tôi cố gắng để làm cho một siêu liên kết đơn giản mà liên kết đến một anchor được đặt tên trong trang, ví dụ:Sử dụng HtmlAnchor hoặc ASP.NET HyperLink cho thẻ neo rằng điều hướng trong trang có tên neo
<a href="#namedAnchor">scroll to down</a>
<a name="namedAnchor">down</a>
Vấn đề là khi tôi sử dụng điều khiển ASP.NET như asp:HyperLink
hoặc HtmlAnchor
, href="#namedAnchor"
được hiển thị là href="controls/#namedAnchor"
(trong đó controls
là thư mục phụ nơi người dùng kiểm soát chứa neo). Dưới đây là mã cho sự kiểm soát, sử dụng hai loại điều khiển neo, mà cả hai đều có cùng một vấn đề:
<%@ 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>
Nguồn tạo ra trông giống như:
<a href="controls/#namedAnchor">HtmlAnchor</a>
<a href="controls/#namedAnchor">HyperLink</a>
Tôi thực sự chỉ muốn:
<a href="#namedAnchor">HtmlAnchor</a>
<a href="#namedAnchor">HyperLink</a>
Tôi đang sử dụng lớp HtmlAnchor
hoặc HyperLink
vì tôi muốn thực hiện thay đổi đối với các thuộc tính khác trong mã phía sau. Tôi không muốn giới thiệu một điều khiển web tùy chỉnh cho yêu cầu này, vì yêu cầu tôi đang theo đuổi không đủ quan trọng để biện minh cho việc bỏ qua các điều khiển liên kết ASP.NET truyền thống. Có vẻ như tôi sẽ có thể sử dụng các điều khiển liên kết ASP.NET để tạo liên kết mong muốn.
có thể trùng lặp của [điều khiển người dùng asp.net, nhận htmlAnchor quyết tâm href = "#"] (http://stackoverflow.com/questions/1489332/asp -net-user-control-getting-htmlanchor-resolve-to-href) – zzzzBov