asp.net如何让LinkButton生成网页后显示正常超链接的形式而且还能执行OnClick事件?

jilei4311 2010-11-13 02:54:48
我想实现的功能是当点击一个链接后即刻在后台执行一段代码统计点击这个链接的用户IP之类的信息后再实现页面的跳转,而不是当跳转到点击的链接之后才统计来访者的信息,我现在的实现方式是用LinkButton,但是我不想让LinkButton生成网页之后显示的是 javascript__doPostBack()的形式,而是一个正常的带href和target属性的超链接,所以我在ListView的 ItemDataBound事件里是这么写的
LinkButton btnGo = (LinkButton)e.Item.FindControl("btnGo");
btnGo.Click += new EventHandler(btnGo_Click);
btnGo.Attributes.Add("href", LinkUrl);
btnGo.Attributes.Add("target", "_blank");
但是这样写的话 btnGo_Click不能执行,但是可以实现带href和target属性的超链接的形式,要是把这段代码去掉了可以执行btnGo_Click事件但是又会显示javascript__doPostBack()的形式,很郁闷,该怎么办啊?或者不用LinkButton换一种方式该如何实现点击链接既能立即执行一段统计的代码然后再页面跳转?
...全文
436 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
jilei4311 2010-11-13
  • 打赏
  • 举报
回复
LinkButton跟Hyperlink差不多,不过LinkButton有Click事件可以执行,我现在需要的是一个可以执行事件的超级链接

[Quote=引用 5 楼 sp1234 的回复:]
引用楼主 jilei4311 的回复:
或者不用LinkButton换一种方式该如何实现点击链接既能立即执行一段统计的代码然后再页面跳转?

嘿,看到最后一句,怎么又绕回来了啊?那么你前边断定自己不需要回发干什么啊?

“执行一段统计代码然后”让页面跳转用Response.Redirect,跟LinkButton没有关系。
[/Quote]
jilei4311 2010-11-13
  • 打赏
  • 举报
回复
HyperlinkButton?我没有说HyperlinkButton啊?我问的是LinkButton啊

[Quote=引用 4 楼 sp1234 的回复:]
嗯,你看我还这么善解人意地把它理解成HyperlinkButton,命名很像HyperLink的。结果我一查asp.net,根本没有HyperlinkButton,只有LinkButton和Hyperlink两个。你把这两个命名完全不同的都用反了。
[/Quote]
jilei4311 2010-11-13
  • 打赏
  • 举报
回复
在 ListView的ItemDataBound事件里注册LinkButton的事件可能调用不到,但是直接像下面那样写在页面上是可以调用到的
<asp:LinkButton ID="lbtnGo" OnClick="" CommandName="UpdateFilter" CommandArgument='<%# Eval("ID") %>' runat="server">编辑</asp:LinkButton>

我现在的问题是既想让LinkButton在生成页面后鼠标放在那个连接上时显示的是一个a链接,而不是
javascript__doPostBack(),并且还能执行LinkButton的Click事件
[Quote=引用 1 楼 hateyoucode 的回复:]
这样写没用的,我页试过,不过我用的是repeater

用repeater的oncommand事件可以执行onclick事件
[/Quote]
  • 打赏
  • 举报
回复
[Quote=引用楼主 jilei4311 的回复:]
或者不用LinkButton换一种方式该如何实现点击链接既能立即执行一段统计的代码然后再页面跳转?[/Quote]

嘿,看到最后一句,怎么又绕回来了啊?那么你前边断定自己不需要回发干什么啊?

“执行一段统计代码然后”让页面跳转用Response.Redirect,跟LinkButton没有关系。
  • 打赏
  • 举报
回复
嗯,你看我还这么善解人意地把它理解成HyperlinkButton,命名很像HyperLink的。结果我一查asp.net,根本没有HyperlinkButton,只有LinkButton和Hyperlink两个。你把这两个命名完全不同的都用反了。
  • 打赏
  • 举报
回复
[Quote=引用楼主 jilei4311 的回复:]
我想实现的功能是当点击一个链接后即刻在后台执行一段代码统计点击这个链接的用户IP之类的信息后再实现页面的跳转,而不是当跳转到点击的链接之后才统计来访者的信息,我现在的实现方式是用LinkButton,但是我不想让LinkButton生成网页之后显示的是 javascript__doPostBack()的形式,而是一个正常的带href和target属性的超链接[/Quote]

搞清楚,你到底是需要HyperlinkButton呢?还是HyperLink?

有哪些控件都搞错了啊!
jilei4311 2010-11-13
  • 打赏
  • 举报
回复
如果我加上下面这段代码就不能执行,如果去掉就可以了
btnGo.Attributes.Add("href", LinkUrl);
btnGo.Attributes.Add("target", "_blank");


[Quote=引用楼主 jilei4311 的回复:]
我想实现的功能是当点击一个链接后即刻在后台执行一段代码统计点击这个链接的用户IP之类的信息后再实现页面的跳转,而不是当跳转到点击的链接之后才统计来访者的信息,我现在的实现方式是用LinkButton,但是我不想让LinkButton生成网页之后显示的是 javascript__doPostBack()的形式,而是一个正常的带href和target属性的超链接,所以我在ListView的 ItemD……
[/Quote]
hateyoucode 2010-11-13
  • 打赏
  • 举报
回复
这样写没用的,我页试过,不过我用的是repeater

用repeater的oncommand事件可以执行onclick事件

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧