-1

您将如何为这种情况创建一个 jquery 验证器?

A: <input type="text" id="A" />
OR
B: <input type="text" id="B" />
OR
C: <input type="text" id="C" /> AND D: <input type="text" id="D" />

所以用户必须完成其中一行,如果他们选择最后一行,他们必须完成两个字段。

require_from_group 并没有完全到位。

谢谢!

4

1 回答 1

0
  • 使用require_from_groupA、B、C 和 D 的规则。

  • required只有在填写了 D 时才对 C使用规则。

  • required只有在填写了 C 时才对 D使用规则。

  • 您必须使用name属性才能使此插件正常工作。
    <input type="text" id="A" name="A" />

 

$(document).ready(function () {

    $('#myform').validate({
        rules: {
            A: {
                require_from_group: [1, '.mygroup']
            },
            B: {
                require_from_group: [1, '.mygroup']
            },
            C: {
                require_from_group: [1, '.mygroup'],
                required: function () {
                    return $('input[name="D"]').is(':filled');
                }
            },
            D: {
                require_from_group: [1, '.mygroup'],
                required: function () {
                    return $('input[name="C"]').is(':filled');
                }
            }
        }
    });

});

工作演示:http: //jsfiddle.net/5FMT9/

验证完全按照指定的方式工作,但是,您仍然需要做一些工作来整合和放置消息。 请参阅errorPlacementerrorElementwrappererrorLabelContainer和回调函数和errorContainer选项showErrors

于 2013-10-04T17:37:04.987 回答