C# 需要在常规超链接上执行代码隐藏

C# 需要在常规超链接上执行代码隐藏,c#,asp.net,hyperlink,code-behind,C#,Asp.net,Hyperlink,Code Behind,我有一个奇怪的情况。我有一个动态生成超链接的网站(作为用户控件),该网站的target属性设置为\u blank,因为我需要在新窗口中打开它。由于新页面显示的内容的性质,我需要在用户单击它时进行审核。我已经设置了审计功能,所以我正在寻找一种在链接打开新页面之前运行代码的方法 如果它在同一个站点的内部页面中,我可以简单地将超链接作为一个命令按钮,运行审计代码,然后执行Response.Redirect() 我无法控制目标页面,因为它们位于不同的网站上。我想问她其他人是如何做到这一点的,以及是否有可

我有一个奇怪的情况。我有一个动态生成超链接的网站(作为用户控件),该网站的
target
属性设置为
\u blank
,因为我需要在新窗口中打开它。由于新页面显示的内容的性质,我需要在用户单击它时进行审核。我已经设置了审计功能,所以我正在寻找一种在链接打开新页面之前运行代码的方法

如果它在同一个站点的内部页面中,我可以简单地将超链接作为一个命令按钮,运行审计代码,然后执行
Response.Redirect()


我无法控制目标页面,因为它们位于不同的网站上。我想问她其他人是如何做到这一点的,以及是否有可能按照我解释的方式做到这一点

将链接更改为站点上的处理程序,该处理程序执行审核,然后重定向。所以你的链接应该是这样的

<a href="/MyAuditingHandler.ashx?targetUrl=http://www.externalsite.com" target="_blank"></a>


您的处理程序进行审核,读取
targetUrl
参数,然后重定向。

将您的链接更改为站点上执行审核的处理程序,然后重定向。所以你的链接应该是这样的

<a href="/MyAuditingHandler.ashx?targetUrl=http://www.externalsite.com" target="_blank"></a>


您的处理程序审核、读取
targetUrl
参数,然后重定向。

您仍然可以执行
Response.Redirect()
技术,还是我在这里遗漏了什么?将真正的超链接作为参数传递到您的审核页面…

您仍然可以使用
Response.Redirect()
技术,还是我在这里遗漏了什么?将真正的超链接作为参数传递到审核页面…

因为您希望在新窗口(选项卡)中打开链接
我建议使用一个JavaScript窗口。打开它之前,先调用AJAX进行审计。这将是一个更快更好的用户体验。

因为您想在新窗口(选项卡)中打开链接
我建议使用一个JavaScript窗口。打开它之前,先调用AJAX进行审计。这将是一个更快更好的用户体验。

当然,我完全没有意识到我可以将处理程序本身作为Popup。当然,我完全没有意识到我可以将处理程序本身作为Popup响应。重定向是用户体验和服务器负载的可怕交互。响应。重定向是用户体验和服务器负载的可怕交互。