Интеграция CKEditor 5 с полем ввода `<textarea>` на веб-странице достаточно проста. CKEditor 5 позволяет инициализировать его на любом элементе, включая `<textarea>`. При этом все данные, введённые в редакторе, будут автоматически синхронизированы с этим полем. Вот шаги, которые вам нужно выполнить для интеграции CKEditor 5 с формой:
### Шаг 1: Подготовка HTML-формы
Начните с создания простой формы с `<textarea>`, в которой будет инициализироваться CKEditor:
```html
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>CKEditor 5 Integration</title>
<script src="https://cdn.ckeditor.com/ckeditor5/38.0.0/classic/ckeditor.js"></script>
</head>
<body>
<form id="myForm" action="/submit" method="POST">
<textarea name="content" id="editor"></textarea>
<button type="submit">Отправить</button>
</form>
<script>
// Инициализация CKEditor на элементе <textarea>
ClassicEditor
.create(document.querySelector('#editor'))
.catch(error => {
console.error(error);
});
</script>
</body>
</html>
```
### Шаг 2: Обработка данных на сервере
Когда пользователь отправляет форму, данные из CKEditor будут отправлены вместе с данными формы как обычный текст. На стороне сервера вы можете обрабатывать эти данные как обычно:
#### Пример на сервере с использованием Node.js и Express:
```javascript
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
app.use(bodyParser.urlencoded({ extended: true }));
app.post('/submit', (req, res) => {
const content = req.body.content;
console.log('Отправленные данные:', content);
// Здесь вы можете сохранить данные в БД или выполнить другие операции
res.send('Форма успешно отправлена');
});
app.listen(3000, () => {
console.log('Сервер запущен на http://localhost:3000');
});
```
### Шаг 3: Примечания
1. **Подключение CKEditor**: В приведенном примере CKEditor 5 подключается с CDN. Если вы хотите использовать другую версию или настроить его, вы можете скачать его и подключить локально.
2. **Синхронизация**: CKEditor автоматически синхронизирует данные с `<textarea>` при отправке формы, так что вам не нужно беспокоиться о ручной синхронизации.
3. **Поддержка форматов**: CKEditor позволяет работать с форматированием текста и вставлять изображения, таблицы и др. Убедитесь, что серверная часть корректно обрабатывает полученные данные, особенно если вы собираетесь хранить HTML-код.
Таким образом, CKEditor 5 легко интегрируется с формами, и вы можете начинать использовать его для улучшения пользовательского ввода на вашем сайте.