我已经编写了一些代码来验证textarea,但是它不适用于一个CKeditor textarea的多次验证。这是我的代码:
<div id="insdescription" class="col-md-12 input-group" >
<textarea type="text" id="insdescription1" name="insdescription" class="form-control" rows="5" data-parsley-errors-container="#insdescription-errors" data-parsley-required-message="Это поле необходимо!" data-parsley-minlength-message="Введите не менее 10 символов!" ><?= $instructors['description']; ?></textarea>
<script>
CKEDITOR.replace('insdescription1');
</script>
</div>
<div id="insdescription-errors"></div>
<script type="text/javascript">
CKEDITOR.on('instanceReady', function () {
$('#insdescription1').attr('minlength', '10');
$('#insdescription1').attr('required', '', );
$.each(CKEDITOR.instances, function (instance) {
CKEDITOR.instances[instance].on("change", function (e) {
for (instance in CKEDITOR.instances) {
CKEDITOR.instances[instance].updateElement();
$('form').parsley().validate();
}
});
});
});
</script>实际上,它适用于required="“验证。但它不适用于minlength="10“。这是截图

发布于 2017-09-05 21:16:24
您需要创建自己的欧芹自定义验证器。
实际上,您正在验证CKEDITOR的内容,例如,字符串:
1234变成:
<p>1234</p>最后一根弦大于4。
自定义验证程序可以是:
window.Parsley.addValidator('minTextSize', {
validateString: function(_value, minTextSize, parsleyInstance) {
if (!window.FormData) {
alert('You are making all developpers in the world cringe. Upgrade your browser!');
return true;
}
var txt = $(_value).text().trim();
return txt.length > minTextSize;
},
requirementType: 'integer'
});因此,您的文本区域将是:
<textarea id="insdescription1" name="insdescription" class="form-control" rows="5"
data-parsley-trigger="keyup"
data-parsley-min-text-size="10"
data-parsley-errors-container="#insdescription-errors"
data-parsley-required-message="Это поле необходимо!rrr"
data-parsley-min-text-size-message="Введите не менее 10 символов!xxx"></textarea>小提琴是这里。
PS:因为我不懂你的语言,所以我在你的留言末尾加上了字符,我需要测试。
https://stackoverflow.com/questions/46062804
复制相似问题