当用户使用
点击缩略图图像(使用“缩略图”类)时,我有一个隐藏字段(通过Jquery)<input type="hidden" id="DocThumbnail" name="DocThumbnail" value=""/>
和
$(".Thumbnail").click(function() {
var thumbnailFile = $(this).attr("src");
$("#DocThumbnail").val(thumbnailFile);
});
我已按如下方式设置了jquery验证:
$("#AddDocumentForm").validate({
ignore: [],
rules: {
DocThumbnail : { required : true}
},
messages: {
DocThumbnail: "Please choose a thumbnail"
}
});
当我单击AddDocumentForm上的提交按钮时,错误显示为隐藏字段的值为空,但是当我单击缩略图(带有“缩略图”类)时,将填充隐藏字段但验证警报保持不变,表格不会提交。
有没有人知道如何验证jquery填充的隐藏字段,好像我不添加ignore:[];然后在验证中忽略隐藏字段
答案 0 :(得分:1)
更改DocThumbnail
的值后,您需要调用Validator.element方法。这告诉jQuery Validate重新检查DocThumbnail
,这将使错误消息消失。
您的更新代码如下所示:
var validator = $("#AddDocumentForm").validate({
ignore: [],
rules: {
DocThumbnail : { required : true}
},
messages: {
DocThumbnail: "Please choose a thumbnail"
}
});
$(".Thumbnail").click(function() {
var thumbnailFile = $(this).attr("src");
$("#DocThumbnail").val(thumbnailFile);
validator.element($('#DocThumbnail'));
});
您可以在此处查看一个有效的示例:http://jsfiddle.net/ryleyb/r0rkfykg/