C# 复选框CheckChanged事件后自定义验证器未启动
我仍在努力理解并找到以下问题的解决方案: 我有一个自定义验证器:C# 复选框CheckChanged事件后自定义验证器未启动,c#,asp.net,webforms,.net-4.5,C#,Asp.net,Webforms,.net 4.5,我仍在努力理解并找到以下问题的解决方案: 我有一个自定义验证器: <asp:CustomValidator ID="CustomValidator" runat="server" OnServerValidate="CustomValidator_ServerValidate" Forecolor="Red" Display="dynamic" style="margin-top:10px; margin-bottom:10px" ValidationGroup="te
<asp:CustomValidator
ID="CustomValidator" runat="server"
OnServerValidate="CustomValidator_ServerValidate"
Forecolor="Red" Display="dynamic"
style="margin-top:10px; margin-bottom:10px"
ValidationGroup="test">
<asp:Button ID="ButtonSave" UseSubmitBehavior="false"
ValidationGroup="test" Enabled="false" runat="server"
Text="Valider modifications" OnClick="ButtonSave_Click"
CssClass="btn ButtonSave" Width="200px"
style="margin-right:5px; margin-bottom:10px; margin-top:10px" />
如果我直接单击按钮save
,我的自定义验证器将被正确调用,我可以执行所有检查。但是,当我单击我的复选框时,然后单击我的按钮,我的自定义验证器将不再被调用。我真的不明白这种行为。
如果有人能为我提出一个解决方案,请?我测试了其他一些东西:我使用一个布尔值来知道我是否进入了自定义验证器事件,如果没有,我在我的按钮单击事件中使用Page.Validate()。没有进行验证。。。另外,我查了firebug,我没有任何错误…这真的很奇怪。选中“我的”复选框后,我的自定义验证器将不再在单击按钮时激发。但是,如果我删除复选框上的复选框,我的自定义验证器就会工作。所以我看着,我在比赛中所做的一切都改变了。事实上,我只是禁用了一些控件,并根据复选框中的复选框启用了一些控件……我真的不理解这种行为。好的问题解决了…………事实上,我的自定义验证器位于一个面板中,我在选中复选框时禁用了该面板……所以很明显,我的自定义验证器也被禁用了。。。。。。
<td class="transparent">
<asp:CheckBox ID="Type_CheckBoxCancel"
Text="Cancel" runat="server" CssClass="EntreeCheckbox"
TextAlign="Right" OnCheckedChanged="Type_CheckBoxCancel_CheckedChanged"
AutoPostBack="true" />
</td>