下午好,我遇到了以下问题.
我正在使用jQuery Validation插件来验证我的表单v1.13.0客户端.
工作得很好.
但我无法解决的问题是:
我有一个字段名称“product []”,这是一个数组.
我可能有一个或者我可能在这个阵列中有20个产品.
这是我的代码:
data_emissao: {required: true},forma_pagamento: {required: true},produto[]: {required: true},// tried this with no sucess
有人遇到过这个问题吗?
解决方法
两个问题……
1)如果您的字段名称包含括号,圆点或其他特殊字符,则必须将名称括在引号中.
"produto[]": { required: true }
2)但是,除非输入包含这个确切的名称,name =“produto []”,否则它将无法工作,因为你无法在.validate()的rules选项中声明一个数组. rules选项仅接受单个字段名称的列表.
两种可能的方案……
1)您可以使用.rules()方法,如下所示.使用jQuery“starts with”选择器选择整个数组,使用jQuery .each()将.rules(‘add’)方法应用于该组中的每个字段.
$('[name^="produto"]').each(function() { // select elements using "starts with" selector $(this).rules('add',{ required: true,// other rules }); });
2)但是,如果只需要唯一的规则,那么您根本不需要使用任何JavaScript来声明它.您可以使用所需的HTML5属性,而jQuery Validate插件仍然可以使用它.
<input type="text" name="produto[0]" required="required" /> <input type="text" name="produto[1]" required="required" /> <input type="text" name="produto[2]" required="required" /> <input type="text" name="produto[3]" required="required" /> <input type="text" name="produto[4]" required="required" />