我有一个按钮,它有modalpopupextender工作绝对没问题,但是在modalpopup出现之前我想验证文本框控件如果它无效那么modalpopup应该不会出现其他明智的它应该像往常一样工作.. 有没有人有想法。
答案 0 :(得分:3)
我们使用以下功能。在按钮上单击,您可以调用此功能。这将验证传递给此函数的验证组,并且工作将弹出模态弹出窗口,否则将出现验证错误。
function ClientSideValidate(modalId,group)
{
var modal = $find(modalId);
Page_ClientValidate(group);
if(!Page_IsValid)
{
modal.show();
}
}
答案 1 :(得分:0)
我过去做过的事情是手动显示/隐藏模态弹出窗口。我意识到ModalPopupExtender控件需要一个目标,所以你需要一个虚拟目标,它将保持不活动状态:
<asp:LinkButton id="btnDummyTarget" runat="server" />
<asp:Button
id="btnActualButtonTiedToValidation"
ValidationGroup="SomeValidationGroup"
OnClick="MyButton_Click"
runat="server" />
<ajaxToolkit:ModalPopupExtender
id="mpeMyPopup"
PopupControlID="pnlSomePanelToShow"
TargetControlID="btnDummyTarget"
runat="server" />
然后,在您的代码隐藏中,您可以执行以下操作:
protected void MyButton_Click(object sender, EventArgs e)
{
if(Page.IsValid)
mpeMyPopupExtender.Show();
}
这对于删除确认对话框也很方便。