检测在Page_Load中单击了哪个按钮

本文关键字:按钮 单击 Page Load 检测 | 更新日期: 2023-09-27 18:31:19

在我的 asp.net 网页中,有一些按钮和复选框。它们都可能导致回发。我可以检测单击了哪个控件吗?因为我会添加代码,如果单击按钮然后做某事。我看到一些例子是用Jquery完成的。我们可以在 C# 中做到这一点吗?

谢谢。

检测在Page_Load中单击了哪个按钮

为什么不只使用按钮的单击行为:

.ASPX

<asp:Button id="Button1"
       Text="Click here for greeting..."
       OnClick="GreetingBtn_Click" 
       runat="server"/>

.CS

void GreetingBtn_Click(Object sender,EventArgs e)
{
}

参考这里

您可以检查生成回发的控件Request.Form["_EVENTTARGET"]

好吧,如果每个按钮都向帖子或获取参数提交一个键值,并且它们都不同,那应该很容易! :)

localhost/home.html?button=clicked&link=selected

上面是一个获取参数URL的示例,您可以使用jQuery来获取这些URL,或者如果它是一个帖子,您将以类似的方式访问它们......不过,前一页必须是一个表单。

你最终可以通过检查 Request.Form["_EVENTTARGET"] 来做到这一点,但这是非常不寻常的,当然不是必需的。

无论您需要执行什么操作,都可以在给定控件的 Click 事件处理程序中执行。

您可以使用javascript设置指定操作(复选框/文本框/按钮单击)的服务器隐藏控件,并在页面加载中检索该服务器控件以检查其操作并添加该操作的代码