1

我在更新面板中的面板中有一个文本框和一个按钮控件。我想验证文本框是否在按钮单击时为空。实际上,此面板用于 Modal Popup Extender 功能。对于弹出窗口,我使用 AJAX 模式弹出扩展器控件。

我正在使用Requiredfieldvalidator 控件来验证文本框,但它没有在按钮单击时触发。

代码:

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
       <ContentTemplate>
            <asp:Panel ID="Panel1" runat="server" CssClass="modalPopup" Style="display: none">
                <asp:TextBox ID="TextBox1" runat="server" Visible="false" CausesValidation="true"></asp:TextBox>

                <asp:RequiredFieldValidator runat="server" ID="RequiredFieldValidator2" ControlToValidate="TextBox1"
                                                                    ErrorMessage="Data is Required">
                    </asp:RequiredFieldValidator>
                <asp:Button ID="Button1" runat="server" Text="Submit" OnClick="btnSubmit_Click" CausesValidation="true" />
             </asp:Panel>
     </ContentTemplate>
    <Triggers>

       <asp:AsyncPostBackTrigger ControlID="Button1" />
    </Triggers>
</asp:UpdatePanel>

有什么解决办法吗?

编辑

<cc1:ModalPopupExtender ID="mpePopUp" runat="server" DropShadow="false" PopupControlID="Panel1"
                                        TargetControlID="lnkFake" BackgroundCssClass="modalBackground">
                                    </cc1:ModalPopupExtender>

背后的代码: 我在gridview中有链接按钮..单击该链接应该显示弹出窗口。在 gridview 行命令事件中,我正在使用 popup show 方法

mpePopUp.show();

4

1 回答 1

0

添加验证组并从文本框中删除原因验证尝试一下

<asp:Panel ID="Panel1" runat="server" CssClass="modalPopup" Style="display: none">
                <asp:TextBox ID="TextBox1" runat="server" ></asp:TextBox>

                <asp:RequiredFieldValidator runat="server" ID="RequiredFieldValidator2" ControlToValidate="TextBox1" validationgroup="Group1" ErrorMessage="Data is Required">
                    </asp:RequiredFieldValidator>
                <asp:Button ID="Button1" runat="server" Text="Submit" OnClick="btnSubmit_Click" validationgroup="UserInfoGroup"  CausesValidation="true" />
             </asp:Panel>
于 2012-07-27T05:02:05.747 回答