[英]Conditional Validation - Jquery
我已经对此进行了充分的研究和使用,但我不知道它仍然会出错。 我需要检查是否存在现有图像,然后文件属性应跳过验证,反之亦然。
HTML代码:
<input type="file" name="image" id="image">
<input type="hidden" name="old_image" value="">
jQuery验证码:
$("#add_reference").validate({
rules: {
link: {
required: true,
},
image:{
//required: true,
required: function(element) {
if ($("#old_image").val() == '')
{
return true;
}
else
{
return false;
}
},
accept:"jpg,png,jpeg,gif"
},
},
messages: {
link: {
required: "Please enter link title",
},
image:{
required: "Please choose image",
accept: "Please choose valid image files",
},
},
errorPlacement: function (error, element) {
var attr_name = element.attr('name');
error.insertAfter(element);
}
});
谁能告诉我我要去哪里错了吗?
您的输入标签中没有id,而是应添加id属性。
<input type="hidden" name="old_image" id="old_image" value="">
而您通过id调用它
if ($("#old_image").val() == '')
<input type="file" name="image" id="image">
<input type="hidden" id="old_image" name="old_image" value="">
您的验证将不会触发,因为它始终通过测试,您正在测试#old_image是否为空,并且可以看到它始终为空,是否在上载文件后触发事件?
您可以通过此事件来做。
$(function() {
$("input:file").change(function (){
var fileName = $(this).val();
$("#old_image").val(fileName);
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.