繁体   English   中英

如何在ASP.NET Page_Load事件中识别RadButton启动回发的原因?

[英]How can I identify, in an ASP.NET Page_Load event, what RadButton initiated a postback?

在我的ASP.NET页的Page_Load我试图确定某个按钮是否已被单击并尝试回发:

if (Page.IsPostBack)
{
    if (Request.Params.Get("__EVENTARGUMENT") == "doStuff")
      doSomething();
}

doStuff是标记中的JavaScript,但我不希望单独触发触发doSomething()方法调用,我还需要确保用户单击的按钮正确。

用户单击后,如何从后面的代码中识别和引用按钮控件? 我搜索并发现了这个问题,但是当我尝试实现它时,返回的控件始终为null

或使用CommandName和命令事件。

        <telerik:RadButton ID="RadButton1" runat="server" CommandName="first" CommandArgument="one" OnCommand="CommandHandler" />
        <telerik:RadButton ID="RadButton2" runat="server" CommandName="second" CommandArgument="two" OnCommand="CommandHandler" />
        <asp:Label ID="Label1" Text="" runat="server" />
        <asp:Label ID="Label2" Text="" runat="server" />

protected void  CommandHandler(object sender, CommandEventArgs e)
{
    Label1.Text = e.CommandArgument.ToString();
    Label2.Text = e.CommandName;
}

您尚未真正解释您要做什么,但是如果您向按钮添加OnClick事件处理程序,而不是尝试在Page_Load弄清楚它,这似乎可以使您轻松得多。 仅在单击该按钮时才执行事件处理程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM