我有这个表单和所有其他输入,所有输入都正确地显示错误,除了这个,这是一个文件上传。
有人可以给我一双眼睛,看看我错了吗?
当我console.log(element)
假设显示错误发生时但是根本没有发生。
这是我的html
的代码<label for="phone">Phone</label><input type="text" name="phone" value="">
<label for="city">City</label><input type="text" name="city" value="">
<label for="qr_code_image">QR CODE</label><input type="file" class="hidden image-field" name="qr_code_image" id="qr_code_image"><div class="add-image-icon" data-field="qr_code_image"><i class="icon-plus"></i></div>
在我的js中
rules: {
city: {
required: true
},
phone: {
required: true,
},
qr_code_image: {
required: true
}
},
// Where to place the error message
errorPlacement: function (error, element) {
console.log(element);
error.appendTo(element.next('.errorMsg'));
}
我没有在这里添加错误输出的div。 使用控制台日志,我只能看到两个错误,而不是3个。 我尝试提交甚至没有点击图片上传。
编辑:我意识到这两个类都使用display: none !important
有没有办法保留css并仍然可以使验证工作?
答案 0 :(得分:0)
试试这个:
{{1}}
答案 1 :(得分:0)
$(document).ready(function () {
$('#form').validate({
ignore: [],
rules: {
city: {
required: true
},
phone: {
required: true,
},
qr_code_image: {
required: true,
accept: 'jpeg|png|jpeg'
}
},
// Where to place the error message
errorPlacement: function (error, element) {
console.log(element);
error.appendTo(element.next('.errorMsg'));
}
});
});
在选项中添加ignore:[]
字段可能会解决问题。我也遇到了类似的问题,解决了这个问题。