Я пытаюсь воссоздать функцию maxlength для CLEditor.Цель: если текст вводится в текстовое поле и его длина превышает заданную максимальную длину, текстовое поле должно потерять фокус, чтобы было невозможно писать какие-либо дополнительные буквы.
На данный момент я достиг того, что CLEditor распознает, когда текст становится длиннее, чем моя максимальная длина.Для потери фокуса я попробовал простой метод return (т.е. return; return false;) и некоторые методы .blur () (т.е. $ (frameDesc) .blur (); и cledDesc. $ Area.blur ();).Но они не работают.Я все еще могу заполнить текст, даже если максимальная длина достигнута.
Пожалуйста, посмотрите на код:
$("#profileForm_description").cleditor({width: 430, height: 125});
var cledDesc = $("#profileForm_description").cleditor()[0];
var frameDesc = cledDesc.$frame[0].contentWindow.document;
$(frameDesc).bind('keypress change', function(){
var text = textWithoutHTML(cledDesc.$area.val());
if(text.length >= 650){
console.log("Longer than MaxLength");
//lose focus
}else{
//Do something
}
});
Любая помощь и советы будут оценены:)