Javascript 向Jquery Validate(Meteor.js)添加基于reactiveVars的附加验证

Javascript 向Jquery Validate(Meteor.js)添加基于reactiveVars的附加验证,javascript,jquery,validation,meteor,Javascript,Jquery,Validation,Meteor,我有一个表单,有一些常规的旧输入,然后是一些我希望用户单击的按钮(由reactiveVars控制)。我只希望表单提交并创建一个db实例,如果表单经过验证,并且至少有一个按钮变量被单击为“true”。然而,按照我现在设置的方式,我意识到如果输入填写不正确,将不会调用“提交表单” 事件处理程序: Template.inquiry.events({ 'submit form': function(event, template) { event.preventDefault()

我有一个表单,有一些常规的旧输入,然后是一些我希望用户单击的按钮(由reactiveVars控制)。我只希望表单提交并创建一个db实例,如果表单经过验证,并且至少有一个按钮变量被单击为“true”。然而,按照我现在设置的方式,我意识到如果输入填写不正确,将不会调用“提交表单”

事件处理程序:

Template.inquiry.events({
    'submit form': function(event, template) {
        event.preventDefault();
        var $form = template.$('#request-form');

        if(Template.instance().report.get() == true || Template.instance().consult.get() == true || Template.instance().contract.get() == true) {

            if ($form.valid()) {

                var name = event.target.name.value;
                var email = event.target.email.value;
 }
        else {
            $('#no-choice-error').removeClass('hidden');
        }
    }
});  
Jquery验证:

emplate.inquiry.onRendered(function(){
    $('#request-form').validate({
        rules: {
            name: {
                required: true,
                maxlength: 255
            },
            email: {
                required: true,
                email: true,
                minlength: 3,
                maxlength: 255
            }
    });
});
几乎没有被调用的用例是:

$('#no-choice-error').removeClass('hidden');

我如何确保这个被调用?或者更好的是,将验证中的if(Template.instance().report.get()==true | | | Template.instance().consult.get()==true | | | Template.instance().contract.get()==true)规则与其他输入的Jquery集成在一起

我的建议是,跟aldeed一起去:自动成型。这个软件包可以用另一种方式解决你的大部分问题吗?看起来这应该是一件简单的事情,它的其余部分在没有额外包的情况下已经可以很好地工作了。。。