C# 如果未明确定义onclick事件,请停止设置asp:LinkButton的onclick事件
如何设置默认设置,以便在没有为asp:LinkButton标记显式设置OnClick(即asp.net OnClick属性)时,它不会在客户端呈现OnClick(javascript的html属性)属性?默认情况下,asp.net为LinkButton添加onclick='doPostBack….' 使用案例: 页面上有一个LinkButton标签。对于这个页面,如果用户有一个朋友,我只想在点击按钮时运行客户端代码,并且不会因为任何原因想要发回帖子。如果用户有一个以上的朋友,我希望点击触发回发 包含以下内容的解决方案没有帮助:C# 如果未明确定义onclick事件,请停止设置asp:LinkButton的onclick事件,c#,asp.net,C#,Asp.net,如何设置默认设置,以便在没有为asp:LinkButton标记显式设置OnClick(即asp.net OnClick属性)时,它不会在客户端呈现OnClick(javascript的html属性)属性?默认情况下,asp.net为LinkButton添加onclick='doPostBack….' 使用案例: 页面上有一个LinkButton标签。对于这个页面,如果用户有一个朋友,我只想在点击按钮时运行客户端代码,并且不会因为任何原因想要发回帖子。如果用户有一个以上的朋友,我希望点击触发回发
若我能在运行时看到服务器端是否在asp:LinkButton标记上显式设置了OnClick事件,这也能解决我的问题。有什么想法吗?与其动态切换控件(正如您所提到的,这是一个您不想要的解决方案),不如始终使用
asp:HyperLink
并设置NavigateUrl
属性,将页面重定向回自身,并使用某种查询字符串指示单击的内容
如果您根本不希望发布,只需将NavigateUrl
属性留空即可
当然,如果页面的其余部分依赖于ViewState等等,那么这将毫无价值。
此链接说明如何在运行时查看服务器端是否使用反射显式设置了OnClick事件,我对这个解决方案不感兴趣,而且asp:Hyperlink也没有实现IButton界面,因此它不能用作asp:Panel或form的默认按钮,这对于旧的点击enter键很方便。谢谢。我已经回答了我的问题。但是我想添加一个更快更简单的解决方案,使用按钮的Enabled属性来禁用它,而不需要实际删除或重新附加一个click事件