1

我所拥有的是在用户控件中定义的弹出窗口,该弹出窗口在任务栏用户控件中打开,该控件附加到母版页,例如:

MasterPage.TaskBarUC.PopupUC

在弹出窗口中,有两个按钮,一个用于保存用户在数据库中尝试执行的操作,一个用于取消。当用户单击任一按钮时,我有一些代码隐藏可以完成工作。

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

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

我尝试在“保存”事件处理程序的开头放置一个断点,但它永远不会到达它。好像按钮只是在验证,并完全忽略了它的 OnClick 事件。

.aspx

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

2 回答 2

1

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

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

于 2011-06-24T14:06:11.363 回答
0

Button.CausesValidation属性为 false 为我工作。我正在为不同的按钮使用必填字段验证器。我认为即使对于所有其他按钮单击事件(服务器端),这也可能会停止回发。

于 2012-02-06T17:35:36.267 回答