Javascript JQuery验证规则不适用于输入字段中的文件数组
这在我的代码中似乎不起作用。我尝试使用JQuery表单验证来验证表单,其中一个字段有一个图像数组(或文件输入列表)。我摆弄了很多不同的选择,但没有面纱 以下是我想做的: 假设我有一个表单,它有一个输入字段,可以拍摄多幅图像:Javascript JQuery验证规则不适用于输入字段中的文件数组,javascript,jquery,jquery-validate,Javascript,Jquery,Jquery Validate,这在我的代码中似乎不起作用。我尝试使用JQuery表单验证来验证表单,其中一个字段有一个图像数组(或文件输入列表)。我摆弄了很多不同的选择,但没有面纱 以下是我想做的: 假设我有一个表单,它有一个输入字段,可以拍摄多幅图像: {!! Form::file('images[]', array('multiple'=>true,'id'=>'images', 'class' => 'form-control btn btn-default') ) !!} 我尝试了以下方法:
{!! Form::file('images[]', array('multiple'=>true,'id'=>'images', 'class' => 'form-control btn btn-default') ) !!}
我尝试了以下方法:
$( "#myform" ).validate({
rules: {
images[]: {
required: true,
accept: "image/*"
}
},
messages:
{
images[]: "Title field cannot be blank!"
}
});
在PHP中,像
field[]
这样提交的值会导致一个名为$field的变量,该变量包含一个附加项
$field=array();
$field[]=“A”;
$field[]=“B”
与
$field=array();
阵列推送($field,“A”);
阵列推送($field,“B”);
然而,在JavaScript中,这种语法是未知的。您必须在JSON对象中的字段[]
项周围包装一个数组,或者删除[]
:
$( "#myform" ).validate({
rules: {
field: {
required: true,
accept: "image/*"
}
},
messages:
{
field: "Title field cannot be blank!"
}
});
在您的情况下,我不明白为什么要调用变量字段
。我想你应该把它叫做images
:
$( "#myform" ).validate({
rules: {
images: {
required: true,
accept: "image/*"
}
},
messages:
{
images: "Title field cannot be blank!"
}
});
我将删除[]和您的一样,它不会抛出任何错误消息您确定“field”是正确的名称吗?不是应该是“图像”吗?不是,我只是复制了它。我确实用了我的名字。。我会编辑它插件不是这样工作的。如果在名为
images
的对象上声明规则,则它将查找具有name=“images”
的单个字段,而不是数组。