【发布时间】:2012-07-10 08:11:42
【问题描述】:
我对此仍然相当陌生,并试图找到答案,所以希望我不会重复这个。
我正在使用 ASP.NET 并且有一个复选框控件,当它被更改时会弹出一个弹出框,使用 onCheckedChanged 方法。这个弹出框里面有一些信息和一个“关闭”按钮,可以成功关闭弹出框。
我想要的是防止在未选中复选框时出现弹出窗口。我目前有 onCheckedChanged 调用一个代码隐藏方法,如果未检查控件,该方法将取消扩展程序调用,但弹出窗口在关闭之前很快出现。我怎样才能防止这种情况发生?
这是相应的页面代码:
<div class="row" id="divDDMandate" runat="server">
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Always">
<ContentTemplate>
<asp:CheckBox ID="chkDDMandate" Width="20px" Visible="true" runat="server" AutoPostBack="true"
OnCheckedChanged="clientchkDDMandateChanged(this);" on />
<asp:Literal ID="ltlDDMandate" runat="server">Direct Debit Mandate (by post)</asp:Literal>
<asp:PopupControlExtender ID="chkDDMandate_PopupControlExtender" runat="server"
DynamicServicePath="" Enabled="true" PopupControlID="PanelDDMandateDownload"
TargetControlID="chkDDMandate"
Position="Bottom" OffsetX="-20" OffsetY="10" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
...这是我的方法背后的代码:
protected void chkDDMandateChanged(object sender, EventArgs e)
{
//Cancel the panel if unchecking
if ((!chkDDMandate.Checked) && chkDDMandate_PopupControlExtender.Enabled)
{
chkDDMandate_PopupControlExtender.Cancel();
}
}
如果有任何帮助,我将不胜感激。
干杯
【问题讨论】:
标签: c# asp.net visual-studio asp.net-ajax ajaxcontroltoolkit