jQuery验证插件:多个字段中只需要一个字段

jQuery验证插件:多个字段中只需要一个字段,jquery,ruby-on-rails-3,jquery-validate,Jquery,Ruby On Rails 3,Jquery Validate,请注意,如果“电话”和“移动”字段为空,则会显示错误消息,但在此之后,当两个字段中的任何一个都已填写并再次提交表单时,错误消息也会保留。验证检查是使用输入的旧值进行的,当页面刷新时,它将使用新值。如果有人能帮我解决这个问题,我将不胜感激。请尝试放置自定义错误位置 $('#form').validate({ errorPlacement: function(error,element) { return true;

请注意,如果“电话”和“移动”字段为空,则会显示错误消息,但在此之后,当两个字段中的任何一个都已填写并再次提交表单时,错误消息也会保留。验证检查是使用输入的旧值进行的,当页面刷新时,它将使用新值。如果有人能帮我解决这个问题,我将不胜感激。

请尝试放置自定义错误位置

$('#form').validate({
    errorPlacement: function(error,element) {
                       return true;
                    }
});
1) 根据,我使用构建,但仍然看到许多问题。这些规则似乎根本不起作用,因为这两个字段都是必需的

2)
additional methods.js
文件中包含一个
require\u from\u group
规则。这两个字段必须具有相同的
,才能使规则成为目标,在本例中为
.group
。但是这个方法会禁用表单上的所有其他规则

演示


3) 相反,我构建了一个名为
customrule
(您可以随意命名)的自定义规则,它按照我认为应该的方式工作。我还使用了
groups
选项将两条错误消息合并为一条

工作演示:


请展示您自己的代码。错误放置与“组中一个字段”的必填项有什么关系?感谢您提供的详细解决方案。实际上,我正在使用RubyonRails。您给出的解决方案似乎适用于普通HTML表单,但在使用rails表单时,验证器接受旧值的问题仍然存在。它也适用于rails表单…我想我的代码还有其他问题…@user1484793,如果您编辑OP以显示表单的呈现HTML代码,这将非常有帮助,还有你的jQuery.Thank:)但它现在可以工作了。这个解决方案确实帮助了我!!!
$(document).ready(function () {

    $('#myform').validate({ // initialize the plugin
        groups: {
            name: "telephone mobile"
        },
        rules: {
            telephone: {
                require_from_group: [1, '.group']
            },
            mobile: {
                require_from_group: [1, '.group']
            }
        }
    });

});
$(document).ready(function () {

    $.validator.addMethod("customrule", function (value, element) {
        return (!($("#mobile").val() === '') || !($("#telephone").val() === ''));
    }, "please fill out at least one");

    $('#myform').validate({ // initialize the plugin
        groups: {
            name: "telephone mobile"
        },
        rules: {
            telephone: {
                customrule: true
            },
            mobile: {
                customrule: true
            }
        }
    });

});