jquery - ASP.NET CheckBoxList 客户端验证

标签 jquery asp.net

是否可以为 ASP.NET CheckBox 列表的 jquery 验证插件添加自定义验证功能?我正在使用 jquery 插件来验证客户端的所有控件。它与文本框、下拉列表等普通输入完美配合。出于某种原因,它不能与 Checkboxlist 一起使用。在纯 html 中,checkboxlist 变成了一个带有 html 输入复选框的表格。我编写了一个自定义函数来检查是否选中了任何复选框并将其添加到 jquery 验证中,但由于某种原因该函数没有接到电话。

jQuery.validator.addMethod('cb_selectone', function (value, element) {

     return false;
 }, 'Please select at least one option');

我一直尝试返回 false,但表单仍然验证成功。任何帮助将不胜感激。

最佳答案

这是一种方法,但不使用 jquery.validate。

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<script type="text/javascript" src="Scripts/jquery-1.8.0.js"></script>
<script type="text/javascript">
    function cb_selectone(src, args) {
        var items = $("input[name^='cblTest']");
        for (i = 0; i < items.length; i++) {
            if ($(items[i]).is(":checked")) {
                args.IsValid = true;
                return;
            }
        }
        args.IsValid = false;
    }
</script>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:CheckBoxList runat="server" ID="cblTest">
            <asp:ListItem Text="Test A" Value="A"></asp:ListItem>
            <asp:ListItem Text="Test B" Value="B"></asp:ListItem>
        </asp:CheckBoxList>
        <asp:CustomValidator ErrorMessage="Please select at least one.<br/>" ClientValidationFunction="cb_selectone" runat="server" />
        <asp:Button runat="server" ID="btnTest" Text="Submit" />
    </div>
    </form>
</body>
</html>

关于jquery - ASP.NET CheckBoxList 客户端验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11979472/

相关文章:

javascript - 根据下拉选择动态获取值

jquery - 动态创建表行后应用 Bootstrap "table-striped"

javascript - 如何使用 JQuery 删除我的字母表?

jquery - 如何向幻灯片或 nivoslider 等 slider 添加进度条(时间线)

asp.net/vb.net - system.net smtp 邮件不工作

asp.net - 如何使用 Entity Framework Code-First 执行 CRUD?

javascript - 如何将图片动画化为一张一张灰度

c# - 从外部 Web 应用程序返回值

asp.net - 使用 div 标签的可见性和样式的区别

c# - 如何在单击时获取图像控件上的坐标