C# Ajax手风琴窗格:仅由其窗格中的按钮触发的独立必需字段验证器

C# Ajax手风琴窗格:仅由其窗格中的按钮触发的独立必需字段验证器,c#,asp.net,ajaxcontroltoolkit,accordion,C#,Asp.net,Ajaxcontroltoolkit,Accordion,我有一个Ajax手风琴,使用c#asp.net,带有几个面板。在我的第一个面板中,我有两个必填字段,并且在用户单击按钮时进行验证。现在,我希望在另一个窗格中显示更多内容,但如果我将它们设置为必填字段,则导致对它们进行验证的按钮单击也会显示第一个面板的消息 在每个面板中是否有单独的验证器?我是不是遗漏了一些显而易见的东西 如果有任何代码可以帮助我,我会编辑和包括要求的代码。感谢您提供的任何建议。您可能希望使用s来实现此目的 基本上,您可以在要分组为相同值的每个验证控件上设置“ValidationG

我有一个Ajax手风琴,使用c#asp.net,带有几个面板。在我的第一个面板中,我有两个必填字段,并且在用户单击按钮时进行验证。现在,我希望在另一个窗格中显示更多内容,但如果我将它们设置为必填字段,则导致对它们进行验证的按钮单击也会显示第一个面板的消息

在每个面板中是否有单独的验证器?我是不是遗漏了一些显而易见的东西

如果有任何代码可以帮助我,我会编辑和包括要求的代码。感谢您提供的任何建议。

您可能希望使用s来实现此目的

基本上,您可以在要分组为相同值的每个验证控件上设置“ValidationGroup”属性(有点像CSS类)。然后,将要绑定该组的按钮的“ValidationGroup”属性设置为相同的字符串

具体来说,您需要将
Panel1
容器中的所有验证控件设置为同一个组(因此将
ValidationGroup=“panelOneGroup”
添加到它们的标记中)。然后,将该属性添加到只希望验证该面板的按钮

大概是这样的:

<ajaxToolkit:Accordion ID="myAccordion" >
    <Panes>
        <ajaxToolkit:AccordionPane >
            <Content>
                <asp:RequiredFieldValidator id="validator1" 
                    ValidationGroup="panelOneGroup" >
                </asp:RequiredFieldValidator>

                <asp:RequiredFieldValidator id="validator2" 
                    ValidationGroup="panelOneGroup" >
                </asp:RequiredFieldValidator>

                <asp:Button ID="button1"
                    ValidationGroup="panelOneGroup" />
            </Content>
        </ajaxToolkit:AccordionPane >
        <ajaxToolkit:AccordionPane >
            <Content>
                <asp:RequiredFieldValidator id="validator3" 
                    ValidationGroup="panelTwoGroup" >
                </asp:RequiredFieldValidator>

                <asp:RequiredFieldValidator id="validator4" 
                    ValidationGroup="panelTwoGroup" >
                </asp:RequiredFieldValidator>

                <asp:Button ID="button2"
                    ValidationGroup="panelTwoGroup" />
            </Content>
        </ajaxToolkit:AccordionPane >
    </Panes>
</ajaxToolkit:Accordion >

非常感谢您help@JoeW没问题,很高兴这么做。