我使用bootstrap验证器插件来验证我的表单客户端,并且在重新验证summernote textarea时似乎失败了。它第一次验证,但是当文本更新时,验证不会更新。
此处验证(剪掉其他验证字段)
function validateEditor() {
// Revalidate the content when its value is changed by Summernote
$('#application-form').bootstrapValidator('revalidateField', 'application'));
};
$('.application-form')
.bootstrapValidator({
excluded: [':disabled'],
fields: {
application: {
validators: {
callback: {
message: 'Please do not leave this blank.',
callback: function(value, validator) {
var code = $('[name="application"]').code();
// <p><br></p> is code generated by Summernote for empty content
return (code !== '' && code !== '<p><br></p>');
}
}
}
}
}
}).on('success.form.bv', function(e) {
e.preventDefault();
console.log('Form successfully validated.');
})
.find('[name="application"]')
.summernote({
height: 400,
onkeyup: function() {
validateEditor(); // Revalidate form onkeyup
},
onpaste: function() {
validateEditor(); // Revalidate form on paste
},
});
这里是标记(再次从其他字段剪切)
<div class="form-group">
<textarea name="application"></textarea>
</div>
这是一个很大的问题,因为如果第一次将textarea留空,则表单永远不能重新提交,因为当用户修复错误时验证不会更新。
答案 0 :(得分:0)
我有同样的问题,但使用FormValidation.io,这是一个非常相似的插件。
解决方案:我的textarea具有required
属性。我删除了它和bam,问题解决了。
现在,我真的很抱歉,如果这不是您问题的直接解决方案,那么您的代码显然没有required
属性,但我只是认为我&#39; d仍然和其他人分享,因为这让我疯了好几个小时,这是关于这个问题的最相关的帖子。
就是这样。