【问题标题】:Is it possible to replace in a contenteditable without reloading the page?是否可以在不重新加载页面的情况下替换 contenteditable?
【发布时间】:2020-12-06 13:33:57
【问题描述】:

我想知道是否可以在以下 contenteditable 中将
标签替换为其他内容,而无需重新加载页面:

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

当焦点位于内容可编辑区域时,我通过启动 updateident 函数通过 javascript 替换
标签:

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

上面的js效果很好,然后我把ent内容写到一个html文件中。

但是,只有当我重新加载页面时,修改才会应用于我的网页,因为它会读取存储的 html 文件。

是否可以在我修改内容时应用修改?例如,如果我粘贴一些文本行。

如果有帮助:

完整脚本见 Github 第 375 行:

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

对于网站的演示: https://cnot.fr/(密码 -> 密码)

【问题讨论】:

    标签: javascript html contenteditable


    【解决方案1】:

    我通过添加到我的函数来解决它:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-15
      • 1970-01-01
      • 2019-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多