ASP:Button OnClick事件未在一个特定实例中激发

本文关键字:一个 实例 OnClick Button 事件 ASP | 更新日期: 2023-09-27 18:00:10

我有一个在用户控件中定义的弹出窗口,它在任务栏用户控件中打开,该控件连接到主页面,这样:

MasterPage.TaskBarUC.PopupUC

在弹出窗口中,有两个按钮,一个用于保存用户在数据库中尝试执行的操作,另一个用于取消。我有一些代码绑定,当用户点击任意一个按钮时,它就会完成工作。

因此,每个页面都有任务栏,他们可以单击任务栏上的按钮来访问弹出窗口并保存信息。它工作得很好。但是,站点中有一个特定的页面需要从页面上的按钮以及任务栏访问相同的弹出窗口。

按钮工作,它打开弹出窗口,但出于某种原因,只有在这种情况下,"保存"按钮不会激活我的代码。它确实执行了我让它做的验证。同样奇怪的是,取消按钮也会激活一些代码隐藏,它确实做了它应该做的事情

我试着在"Save"事件处理程序的开头放一个断点,但它从未到达。就好像按钮只是在验证,而完全忽略了它的OnClick事件。

.aspx

<asp:Button ID="btnSave" runat="server" Text="Save" OnClick="btnSave_Click" 
    ValidationGroup="Validation" />

ASP:Button OnClick事件未在一个特定实例中激发

我想发生的是验证过程失败,从而取消了对Button.Click事件的处理。

要检查这种可能性,请尝试将Button.CausesValidation属性的值设置为false,并查看Button.Click处理是否将继续。

Button.CausesValidation属性为false对我有效。我正在为不同的按钮使用所需的字段验证器。我认为即使对于所有其他按钮点击事件(服务器端),这也可以停止发布。