【问题标题】:requiredfield check for asp.net checkboxes in repeater?必填字段检查中继器中的 asp.net 复选框?
【发布时间】:2012-03-05 00:18:02
【问题描述】:

在回发 asp.net 页面之前,如何对每个复选框进行必填字段检查?所以至少需要勾选一个复选框。

aspx

    <asp:Button ID="Submit" Text="Submit" runat="server" OnClick="Submit_Click" />

【问题讨论】:

  • 另外,你应该用JavaScript标记它,因为它需要在你回发到服务器之前完成......

标签: javascript asp.net c#-3.0 validation


【解决方案1】:

对于至少选中一个复选框的一组复选框,我知道的最简单的方法是使用&lt;asp:CustomValidator /&gt;。编写一个 JavaScript 验证函数(验证复选框并确保至少选中一个)并将其分配给&lt;asp:CustomValidator /&gt;

示例标记:

<asp:CheckBox ID="CheckBox1" runat="server" />
<asp:CheckBox ID="CheckBox2" runat="server" />
<asp:CheckBox ID="CheckBox3" runat="server" />
<asp:CheckBox ID="CheckBox4" runat="server" />
<asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="Check at least one" ClientValidationFunction="atLeastOneIsChecked"></asp:CustomValidator>

示例 JavaScript:

function atLeastOneIsChecked(sender, args) {
    var chk1 = document.getElementById('<%=CheckBox1.ClientId %>').checked;
    var chk2 = document.getElementById('<%=CheckBox2.ClientId %>').checked;
    var chk3 = document.getElementById('<%=CheckBox3.ClientId %>').checked;
    var chk4 = document.getElementById('<%=CheckBox4.ClientId %>').checked;

    args.IsValid = (chk1 || chk2 || chk3 || chk4);
    return args.IsValid;
}

【讨论】:

    猜你喜欢
    • 2016-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-16
    • 1970-01-01
    • 2015-01-29
    • 1970-01-01
    • 2011-11-24
    相关资源
    最近更新 更多