Редактор WYSIWYG размещает содержимое HTML в текущей позиции
Я использую WYSIWYG Rich Text Editor от mindmup
Я добавил раскрывающийся список на панели инструментов. Я использую это раскрывающееся меню для извлечения содержимого с сервера и добавления/добавления к существующему контенту в редакторе, где курсор указывает.
![enter image description here]()
Но он не добавляет данные в редактор.
Я назвал Вставить html в карете в contenteditable div и Вставить текст в курсор в редактируемом содержимом div
Но они не работают для меня.
Это функция, которую я использовал для извлечения данных при изменении раскрывающегося списка
function loadJournalTemplate(journalTemplateId) {
$.post('/Journal/GetTemplate', { journalId: journalTemplateId },
function (data, textStatus) {
if (textStatus == "success") {
$('#editor1').html(data.content); //Here i need to append/prepend
}
}, "json");
}
Как мы можем добавить HTML в текущую позицию курсора?
Примечание: Вставить текст в курсор в редакторе контента, редактируемом, добавляет содержимое в раскрывающееся меню, когда я непосредственно выбираю выпадающий список перед нажатием редактора
Ответы
Ответ 1
Похоже, кнопки на панели инструментов украшают фокус из редактируемого элемента, тем самым уничтожая выделение. Вам нужно либо не разрешать кнопкам/выпадающим меню делать это, либо сохранять и восстанавливать позицию курсора, и в этом случае вам нужно будет обнаруживать клики на кнопках панели инструментов прежде чем они уничтожат выбор (возможно, используя mousedown
).
Пример: сохранение и восстановление выделенного текста с сохраненным контентом