C# 点击后如何识别页面加载中的Html链接(锚定)?
我的aspx页面中有一些锚。C# 点击后如何识别页面加载中的Html链接(锚定)?,c#,asp.net,webforms,postback,anchor,C#,Asp.net,Webforms,Postback,Anchor,我的aspx页面中有一些锚。 单击后,我需要在页面加载中确定它们(因为要运行页面加载)。 正如您所知,这些锚定不是常规的asp.net控件,当您单击它们时,Page.IsPostBack始终为false。 由于某些原因,我无法使用链接按钮。 那么,单击后如何确定页面加载中的锚定 提前感谢好吧,我唯一的想法是在url中使用参数,并使用它们来标识单击了哪个超链接 <a href="page.aspx?linkName=link1">Link 1</a> <a href=
单击后,我需要在页面加载中确定它们(因为要运行页面加载)。
正如您所知,这些锚定不是常规的asp.net控件,当您单击它们时,
Page.IsPostBack
始终为false。由于某些原因,我无法使用链接按钮。
那么,单击后如何确定页面加载中的锚定
提前感谢好吧,我唯一的想法是在url中使用参数,并使用它们来标识单击了哪个超链接
<a href="page.aspx?linkName=link1">Link 1</a>
<a href="page.aspx?linkName=link2">Link 2</a>
但是您不能使用
链接按钮
或其他控件的原因是什么?这种方法在ASP.NET中会更方便。好吧,我唯一的想法是在url中使用参数,并使用它们来标识单击了哪个超链接
<a href="page.aspx?linkName=link1">Link 1</a>
<a href="page.aspx?linkName=link2">Link 2</a>
但是您不能使用
链接按钮
或其他控件的原因是什么?这种方法在ASP.NET中会更方便。一种更优雅的方法是在javascript中使用u doPostBack函数(它已经存在于每个ASP.NET页面中)并设置appropiate
事件目标和事件参数。这就是asp.net控件发回服务器的方式
比如说
<a id="LinkButton1" href="javascript:__doPostBack('Anchor1','')">LinkButton</a>
一种更优雅的方法是在javascript中使用_doPostBack函数(它已经存在于每个asp.net页面中)并设置appropiate 事件目标和事件参数。这就是asp.net控件发回服务器的方式 比如说
<a id="LinkButton1" href="javascript:__doPostBack('Anchor1','')">LinkButton</a>
检查查询字符串或Page.RawUrl,您应该在那里捕获#anchorName,我猜…检查查询字符串或Page.RawUrl,您应该在那里捕获#anchorName,我猜…+1,另一个技巧是使用
,浏览器将其添加到当前URL中。+1,另一个技巧是使用
,浏览器会将其添加到当前的URL中。好吧,你说得对,但是我个人不喜欢创建这样的解决方案,这些解决方案对我来说似乎并不明显和可读。不是说我的解决方案更好——只是更具可读性。最好的方法就是不要使用锚,而是坚持使用Asp.Net控件。很多东西都是从开发人员那里抽象出来的(不是开发人员不应该知道的)。将基于windows窗体的编程移植到web需要Microsoft引入这些类型的黑客(uu doPostBack,ViewState)。对于干净易读的基于web的编程来说,MVC是通往goWell的道路,你是对的,但是就我个人而言,我不喜欢创建这样的解决方案,这些解决方案对我来说似乎并不明显和可读。不是说我的解决方案更好——只是更具可读性。最好的方法就是不要使用锚,而是坚持使用Asp.Net控件。很多东西都是从开发人员那里抽象出来的(不是开发人员不应该知道的)。将基于windows窗体的编程移植到web需要Microsoft引入这些类型的黑客(uu doPostBack,ViewState)。对于干净易读的基于web的编程来说,MVC是一个不错的选择