我正在使用引导验证器插件来验证我的表单客户端,并且在重新验证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 留空,则永远无法重新提交表单,因为当用户修复错误时验证不会更新。