c# - Ajax Accordion Pane : separate required field validators only triggered by a button in its pane

标签 c# asp.net ajaxcontroltoolkit accordion

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

是否有办法将每个面板中的验证器分开?我错过了一些非常明显的东西吗?

如果任何代码有帮助,我将编辑并包含请求的代码。感谢您提供的任何建议。

最佳答案

您可能想使用 ValidationGroup这是为了这个。

基本上,您可以在每个要组合在一起的验证控件上设置“ValidationGroup”属性作为相同的值(有点像 CSS 类)。然后,将您希望该组绑定(bind)到的按钮的“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 >

可在此处找到有关 MSDN 的详细示例:Specifying Validation Groups

关于c# - Ajax Accordion Pane : separate required field validators only triggered by a button in its pane,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11295082/

相关文章:

c# - 如何使用 SIMPLE JSON 将 JSON 反序列化为列表?

c# - 如何从命令行运行 dotnet 核心应用程序?

c# - 添加到 Exception.Data 字典时出现问题

c# - 在 C# 中从未知的 JSON 内容创建一个无序列表

c# - 通过引用传递给静态方法的变量?

asp.net - CSS 问题 - ASP.NET 日历选择器

c# - 如何在sql server中存储和检索密码?

c# - SignalR 流仅在生产中强制刷新后才起作用

javascript - 如何从javascript获取ajax Accordion 选择的索引

asp.net-mvc - Ajax 与 Asp.Net MVC?