微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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;
})

原文地址:https://www.jb51.cc/aspnet/250639.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐