Мне нужно использовать редактор wysiwyg на моем веб-сайте. Я использую symfony 4.
Я пробовал использовать ckeditor 5 CDN (https://ckeditor.com/ckeditor-5/download/)
Представление работает хорошо, но форма symfony не отправляется. (textareatype может уничтожить форму, потому что с помощью ckeditor она заменяется на множество div, а раздел textarea может считаться пустым)
это код текстовой области, которая находится в форме.
->add('content', TextareaType::class, [
'label' => "Content label",
'required' => true,
'attr' => [
'class' => "ckeditor"
]
])
и код скрипта
<script>
ClassicEditor
.create( document.querySelector( '.ckeditor' ) )
.catch( error => {
console.error( error );
} );
</script>
Спасибо. безнадежно как сложно пользоваться простым редактором wysiwyg ..



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


изменить: этот ответ предназначен для ckeditor 4, а не для 5
ckeditor не обновляет поле в реальном времени. Перед отправкой формы вам необходимо вызвать функцию updateElement ckeditor.
См .: https://ckeditor.com/docs/ckeditor4/latest/api/CKEDITOR_editor.html#method-updateElement
Я нашел решение. Подчеркиваю, что использую CKEditor 5.
ClassicEditor
.create( document.querySelector( '.ckeditor' ) )
.then( editor => {
theEditor = editor;
} )
.catch( error => {
console.error( error );
} );
document.getElementById("news_submit").addEventListener("click", function() {
theEditor.updateSourceElement();
});
теперь метод updateSourceElement с CKEditor 5.
Вопрос касался CKEditor 5, а не CKEditor 4.