2009-09-30 62 views
1

我有一个按钮,它有modalpopupextender工作绝对没问题,但在modalpopup出现之前我想验证文本框控件,如果它是无效的,那么modalpopup不应该出现其他明智的,它应该像往常一样工作.. 有没有人有想法。ajax模式弹出式扩展器的问题

回答

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(); 
} 

这也是方便删除确认对话框。

+0

IM已经分配的目标控件ID,和IM也在代码编写相同的逻辑背后,但上面 – 2009-10-07 05:59:27

3

我们使用以下函数。点击按钮,你可以调用这个功能。这将验证传递给此函数的验证组,工作将弹出模式弹出窗口,否则会出现验证错误。

function ClientSideValidate(modalId,group) 
{ 
    var modal = $find(modalId); 

    Page_ClientValidate(group); 

    if(!Page_IsValid) 
    { 
     modal.show(); 
    } 
} 
+0

提到有了这个代码模式弹出的情况下仍然得到问题是不来的第一次加载页面时。 – 2009-10-06 14:00:07

相关问题