asp.net – NavigateUrl =“#”变成href =“SubFolder /#”?

这不是费马的最后一个定理,但它不断回到烦恼我,就像一个无薪的大学电话费.有时我想创建一个不会导致回发的HyperLink,所以我希望目标网址为#.当标记恰好来自子文件夹中的UserControl时,
/
|- Home.aspx (uses UC.ascx)
|- Sub
   |- UC.ascx

URL用相对路径重写,例如

<asp:HyperLink runat="server" NavigateUrl="#" >Click Me!</asp:HyperLink>

<a href="SubFolder/#">Click Me!</a>

不幸的是,这是错的.显然,我可以通过不使用服务器控件来解决这个问题,但是它似乎很愚蠢.这可以避免吗?

这里的要点是我将添加一个jQuery或代码隐藏的点击事件,我从来不希望它导致回发,但我希望它成为超链接为CSS的原因.

解决方法

简单的方法
<asp:HyperLink ID="HyperLink1" 
                navigateUrl="#" 
                onclick="javascript:return false;"                   
                runat="server">HyperLink</asp:HyperLink>

要么

<asp:HyperLink ID="HyperLink1" 
                href="#" 
                runat="server">HyperLink</asp:HyperLink>

或者jquery添加一个类到你不想拥有回发的链接(nopostback):

$("a.nopostback").bind('click',function () {
     return false;
})

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....