Редактор 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).

Пример: сохранение и восстановление выделенного текста с сохраненным контентом