CKEditor 5 удаляет лишние теги <p>при вставке содержимого из слова - PullRequest
0 голосов
/ 30 сентября 2019

Когда я копирую содержимое вставки из слова в CKEditor, я получаю дополнительные пробелы (разрывы строк), которых нет в исходном документе, это вызвано тегом <p><br>&nbsp;</p>, который был добавлен CKEditor при вставке. Как я могу удалить этот тег при вставке? У нас есть событие для захвата содержимого при вставке и изменения содержимого перед сохранением?

1 Ответ

0 голосов
/ 03 октября 2019

да, вы можете управлять событием вставки в ckeditor с помощью этого:

editor.on('paste', function(evt) {});

, но до этого ваша проблема, вероятно, заключается в том, что ваш редактор находится в режиме p, чтобы изменить его на br, вам нужно добавить это наconfig:

config.enterMode = CKEDITOR.ENTER_BR;

если все это не удастся, вы можете очистить теги, прежде чем вставить что-то вроде этого:

editor.on('paste', function(evt) {
// cancel paste
evt.stop();

// get text of clipboard
var text = evt.data.dataValue;

// clean html tags
var dom = document.createElement("div");
dom.innerHTML = text;
plain_text=dom.innerText;


editor.insertText(plain_text);
});
...