Можно ли заменить в contenteditable без перезагрузки страницы?

#javascript #html #contenteditable

#javascript #HTML #contenteditable

Вопрос:

Я хотел бы знать, можно ли заменить
теги чем-то другим в следующем contenteditable без необходимости перезагрузки страницы :

 <div class="noteentry" onfocus="updateident(this);" id="entry'.$row['id'].'" data-ph="Enter text here" contenteditable="true">'.$entryfinal.'</div>
 

Я заменяю
теги с помощью javascript, используя функцию updateident, когда фокус находится в области contenteditable:

 var ent = ent.replace(/<brs*[/]?>/gi, "amp;nbsp;<br>");
 

Приведенный выше js работает хорошо, затем я получаю содержимое ent и записываю его в HTML-файл.

Однако изменения применяются на моей веб-странице только при перезагрузке страницы, потому что она считывает сохраненный HTML-файл.

Можно ли применять изменения по мере изменения содержимого? Например, если я вставлю несколько строк текста.

На случай, если это поможет:

Полный сценарий см. В строке 375 Github :

https://github.com/Pozinux/cnot/blob/main/app/index.php

Для демонстрации веб-сайта: https://cnot.fr / (пароль -> пароль)

Ответ №1:

Я решил это, добавив в свою функцию :

 function updateident(el)
{
    ...
    var str = document.getElementById("entry" editingnote).innerHTML; 
    var res = str.replace(/<brs*[/]?>/gi, "amp;nbsp;<br>");
    document.getElementById("entry" editingnote).innerHTML = res;
}