jquery验证。字段A OR字段B OR(字段C和字段D)

时间:2013-10-04 17:04:05

标签: jquery jquery-validate

如何为这种情况创建一个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并没有完全达到目的。

谢谢!

1 个答案:

答案 0 :(得分:0)

  • 在A,B,C和D上使用require_from_group规则。

  • 仅在填写D时才在C上使用required规则。

  • 仅在填写C时才在D上使用required规则。

  • 您必须使用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/

验证工作完全符合规定,但是,您仍需要做一些工作来整合和放置消息。 See the errorPlacement, errorElement, wrapper, errorLabelContainer, errorContainer and showErrors callback functions and options