使用jQuery validate插件验证一些文件输入字段

时间:2012-10-29 15:38:47

标签: javascript jquery html jquery-plugins jquery-validate

HTML

<div id="multadpic">
    <input type="file" name="adpic[]" />
</div>

我在这个div之后有一个按钮,我可以添加无限的文件输入,如下所示:

<div id="multadpic">
    <input type="file" name="adpic[]" />
    <input type="file" name="adpic[]" />
    <input type="file" name="adpic[]" />
    <input type="file" name="adpic[]" />
    <input type="file" name="adpic[]" />
</div>

我如何使用jQuery validate插件验证它?考虑到我不能在规则中写方括号,但输入的名称有方括号..

我找到的一个解决方案是在插件之后编写我自己的验证(但我不知道它是否有效或是否是一个糟糕的工作):

jQuery('#myForm').validate(
{
    rules:
    {
        //my rules
    },

    messages:
    {
        //my messages
    },

    submitHandler:
    {
        //my file input validation
    }
});

我一直在阅读很多关于此的问题,但没有答案解决了我的需要。

提前感谢您的关注。

1 个答案:

答案 0 :(得分:1)

方括号不是.validate()插件的问题。您必须简单地将包含特殊字符的name括在引号中。

工作演示

http://jsfiddle.net/grVmG/

<强>的jQuery

$(document).ready(function() {

    $('#myform').validate({
        rules: {
            "field[]": {
                required: true,
                minlength: 5
            }
        },
        messages: {
            "field[]": {
                required: "this is required",
                minlength: "must be at least {0} characters"
            }
        }
    });

});

<强> HTML

 <input type="text" name="field[]" />