检查子div是否具有类的自定义方法-jquery-validate

检查子div是否具有类的自定义方法-jquery-validate,jquery,html,css,validation,plugins,Jquery,Html,Css,Validation,Plugins,我整天都在和一个定制验证做斗争,我想是时候寻求一些帮助了 我所构建的是一个选择用户界面,类似于向事件添加用户时的facebook。我正在尝试构建一个函数,如果没有选择任何用户,该函数将返回一个错误。我遇到的问题是父div需要像表单元素一样对待,但是我可以找到关于如何做的任何信息 当我在做JSfiddle的时候,我又想到了另一个问题。我将用户ID存储在一个数组中。也许验证可以检查空数组?我也不知道该怎么做,或者哪种方式才是理想的 这是一把小提琴: 以下是我到目前为止所做的尝试 $.val

我整天都在和一个定制验证做斗争,我想是时候寻求一些帮助了

我所构建的是一个选择用户界面,类似于向事件添加用户时的facebook。我正在尝试构建一个函数,如果没有选择任何用户,该函数将返回一个错误。我遇到的问题是父div需要像表单元素一样对待,但是我可以找到关于如何做的任何信息

当我在做JSfiddle的时候,我又想到了另一个问题。我将用户ID存储在一个数组中。也许验证可以检查空数组?我也不知道该怎么做,或者哪种方式才是理想的

这是一把小提琴:

以下是我到目前为止所做的尝试

    $.validator.addMethod('require-one-div', function (element) {
        if ($('#trainees').children('.each_user').hasClass('selected'))
            return true;
        }, "Please select at least 1 trainee");
规则呢

    rules: {
            trainees:{
                'require-one-div':true
            },
        }
我还向家长部门
#培训生
提供了“培训生”的姓名和id以及所需的课程


谢谢你的建议或想法。

哼。。。。无法100%确定此验证插件如何工作。但一种方法可以简单地将其作为“验证”步骤


基本上它说,如果有0个
。选中的
。每个用户div,验证将返回0(falsy)。如果至少有一个,.length>=1为真,表示验证通过。如果验证是相反的,只需钉一个!在长度检查前面
$(“#培训生。每个用户。选定”)。长度

哼哼。。。。无法100%确定此验证插件如何工作。但一种方法可以简单地将其作为“验证”步骤


基本上它说,如果有0个
。选中的
。每个用户div,验证将返回0(falsy)。如果至少有一个,.length>=1为真,表示验证通过。如果验证是相反的,只需钉一个!在长度检查前面
$(“#培训生.每个用户.所选”).length

jQuery Validate不支持
部分的规则。这是一个表单插件。因此,您必须使用
输入
文本区域
选择

正如在评论中所建议的,您可能需要一些东西:

  • 创建隐藏的复选框组或无线组
  • 将您的配置文件的点击链接到每个复选框或收音机中
  • 对此调用validate,但请确保指定
    忽略:“”
    ,否则validate将忽略任何隐藏的表单字段

  • jQuery Validate不支持
    节上的规则。这是一个表单插件。因此,您必须使用
    输入
    文本区域
    选择

    正如在评论中所建议的,您可能需要一些东西:

  • 创建隐藏的复选框组或无线组
  • 将您的配置文件的点击链接到每个复选框或收音机中
  • 对此调用validate,但请确保指定
    忽略:“”
    ,否则validate将忽略任何隐藏的表单字段

  • 验证插件可能会查找
    输入
    字段。为什么不添加
    input type='hidden'
    ,并使用
    click
    事件设置
    true
    /
    false
    值?我目前正在尝试此操作,感谢您的建议验证插件可能会查找
    input
    字段。为什么不添加
    input type='hidden'
    ,其中
    true
    /
    false
    值由
    单击事件设置?我正在尝试此操作,感谢您的建议。非常感谢!我似乎已经得到它的工作与此信息。嘿,非常感谢!我似乎得到了它来处理这些信息。
    
    $.validator.addMethod('require-one-div', function (element) {
        return $('#trainees .each_user.selected').length;
    }, "Please select at least 1 trainee");