Событие для измененного содержимого ckeditor
Если возможно, как мы можем изменить содержимое ckeditor? Например, при открытии страницы в содержимое ckeditor уже вставлен текст, известный как textarea. После этого я набираю что-то еще или удаляю часть этого текста. Есть ли какое-то событие, которое я могу получить, чтобы изменить переменную при изменении текста?
у меня есть это для обычных текстовых полей:
$("input,textarea").on("input", function () {
booleanvar= true;
});
увидел возможное решение где-то, что это:
$('.ckeditor').ckeditorGet().on('key', function (e) {
//some code
});
попробовал, но не получилось. И да, я знаю, что textarea моего ckeditor имеет" ckeditor " в качестве своего класса, поэтому это не причина для него не работать.
Итак, что-то вроде тех примеров, которые я могу использовать, чтобы добраться до какого-то textchanged события ckeditor?
3 ответов
Да, есть очень удобный change
даже это вы можете слушать. Документация здесь:http://docs.ckeditor.com/#!/api / CKEDITOR.редактор-событие-изменение
используйте его, например, так (измените editor1 на экземпляр редактора):
CKEDITOR.instances.editor1.on('change', function() {
console.log("TEST");
});
это поможет мне много, для onchange С CKEditor.
<textarea id="ckeditor_textarea " name="ckeditor_textarea ">Add Yore Data</textarea>
<script type="text/javascript">
var editor = CKEDITOR.replace( 'ckeditor_textarea ', {});
// editor is object of your CKEDITOR
editor.on('change',function(){
console.log("test");
});
</script>
Если у вас много ckeditor (версия 4) на одной странице, вы можете использовать этот код:
CKEDITOR.on('instanceCreated', function(event) {
var editor = event.editor,
element = editor.element;
editor.on('change', function() {
console.log(element.getId());
});
});