jquery - 如何创建 jQuery 函数来验证 ASP 复选框列表上的自定义验证器

标签 jquery asp.net checkboxlist customvalidator

这是我的 checkbox 列表代码: 数据以查找表为界

 <asp:CheckBoxList ID="cbl_AppliancePresent" ClientIDMode="Static"
 CssClass="cbl_AppliancePresent"
                     runat="server" DataTextField="Appliance" DataValueField="ApplianceID" RepeatDirection="Horizontal">
                 </asp:CheckBoxList>

这是自定义验证器:

 <asp:CustomValidator ID="SpecifyAppliances" ClientIDMode="Static"
  runat="server" EnableClientScript="true" ErrorMessage="Please select
     Vacant-not secure reasons"  Font-Bold="True"
     ClientValidationFunction="ValidateNotSecure" ForeColor="Red" 
     Font-Size="Small"></asp:CustomValidator>

功能:

function ValidateNotSecure(source, args) {

    var options = $('.cbl_AppliancePresent');
    for (var i = 0; i < options.length; i++) {
              if (options[i].checked) {
        EnableValidator('SpecifyAppliances'); 
                   args.IsValid = true;
        return false;
               }
    }
    DisableValidator('SpecifyAppliances');
    args.IsValid = false; }

最佳答案

如果您希望通过简单地使用 jquery 来解决它而不使用自定义验证器,那么这里是解决方案。

<body>
    <form id="form1" runat="server">
    <div id="chl1">
     <asp:CheckBoxList ID="CheckBoxList1" runat="server">
            <asp:ListItem>Item1</asp:ListItem>
            <asp:ListItem>Item2</asp:ListItem>
            <asp:ListItem>Item3</asp:ListItem>
            <asp:ListItem>Item4</asp:ListItem>
        </asp:CheckBoxList>
        <asp:Label ID="Label1" runat="server" Text="" ClientIDMode="Static"></asp:Label>

        <asp:Button ID="btncheck" runat="server" Text="Button" ClientIDMode="Static" />

    </div>
    </form>
    <script type="text/javascript">
        $(document).ready(function () {
           $("#btncheck").click(function () {
                var a = 0;
                $(":checkbox").each(function () {
                    if (this.checked) {
                        a = a + 1;
                    }
                });
                if (a == 0) {
                    $("span[id$='Label1']").text('Please select');
                    return false;
                }                           
            });
        });

    </script>
</body>

关于jquery - 如何创建 jQuery 函数来验证 ASP 复选框列表上的自定义验证器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18162053/

相关文章:

c# - 如果 ButtonFields 文本不被视为 TableCell,我如何访问它?

asp.net - 使用 asp.net 在浏览器中的 URL 之前的图像

c# - 具有非 bool 值的 MVC CheckBoxList 模型绑定(bind)

android - 无法启动 Activity ComponentInfo : java. lang.NullPointerException

javascript - 从 data-* 属性获取计数不起作用,为什么?

jquery - mvc ajax/jquery - 单击图像而不重新加载页面

javascript - 使用不同级别的节点解析 JSON

javascript - 如何在鼠标指针的右侧/左侧显示传单弹出窗口?

c# - 列表<对象> 与列表<动态>

c# - 绑定(bind)复选框列表