Получить необработанный HTML-контент редактируемого div с помощью JavaScript - PullRequest
0 голосов
/ 31 января 2019

Я пытаюсь раскрасить написанное внутри редактируемого div тегами span.(Синтаксис Sql).Это работает нормально для первого слова в моем примере, но после этого текст innerHTML и outerHTML не возвращают добавленный мной тег. Как я могу получить полный текст HTML, включая теги?

$(document).on('keyup', '.div_editable', function() {
    const listeGreen = ['select ', 'left join '];
    let content = $(this)[0].innerHTML;
    let content2 = $(this).html();
    let content3 = $(this)[0].outerHTML;
    console.log('---------------------------------------------------------');
    console.log('content: ' + content);
    console.log('content 2: ' + content2);
    console.log('content 3: ' + content3);
    let test = false;
    for (let i = 0; i < listeGreen.length; i++) {
        if (content.indexOf(listeGreen[i]) !== -1) {
          test = true;
          console.log('found ' + i);
            content = replaceAll(content, listeGreen[i],
              '<span style="color: green;font-weight: 700;">' +
            listeGreen[i].substring(0, listeGreen[i].length - 1) + '</span> ');

        }

    }
    if (test === true) {
      console.log('test est true');
      $(this).html(content);
      setCursorToEnd($(this).get(0));
    }

  });

Вывод моей консоли:

enter image description here

...