JQuery Validation Plugin - 如果选择了选项,则验证字段

时间:2016-07-29 20:31:37

标签: jquery validation

我指的是以下插件JQuery Validation

我基本上有一个选择输入

<select class="form-control" id="taskSelect" name="taskSelect" >
    <option value="" name="task" id="task">Select One</option>
    <option value="1" name="task">1</option>
    <option value="2" name="task">2</option>
</select>

现在需要此输入。根据所选内容,将显示一种子表单。我想要做的是验证显示的任何子表单。因此,如果我选择选项1,我不需要验证选项2的字段。我已经设置了JSFiddle来演示。

如何验证所选选项的其他输入?

由于

1 个答案:

答案 0 :(得分:0)

您必须像这样设置验证规则(为清晰起见,最小标记):

<强> HTML:

<form>
    <select id="Controller" name="Controller">
        <option value="1">Make Controller 1 Required</option>
        <option value="2">Make Controller 2 Required</option>
    </select>
    <input name="Controlled_1" />
    <input name="Controlled_2" />
</form>

确保所有需要验证的受控输入字段都具有“name”属性,因为这是作为键进入规则对象的内容。我将id留在控制选择元素上,以便您可以使用受控输入字段使用的所需函数轻松定位它。

<强> JavaScript的:

$('form').validate({
    rules: {
        Controller: {
             required: true
        },
        Controlled_1: {
            required: function() {
                return $('#Controller').val() == 1
            }
        },
        Controlled_2: {
            required: function() {
                return $('#Controller').val() == 2
            }
       }
    },

Here is a JSFiddle我用你的工作版本与你分道扬。