【问题标题】:EpicEditor text showing as   instead of spaceEpicEditor 文本显示为   而不是空格
【发布时间】:2012-10-24 14:39:04
【问题描述】:

不确定这本身是否是一个实际问题,但我正在使用 Epic Editor 在我的 GAE 应用程序中输入和保存 markdown(webpy 使用 mako 作为模板引擎)。

我在表单中有一个隐藏的输入元素,当我提交表单时,它会被 EpicEditor 的内容填充,但所有空格都被   替换。这是预期的功能吗?如果我在 EpicEditor 网站上检查相同的代码,它显然会返回空格而不是  ,那么我的有什么不同呢?

<form>
<!-- form elements -->
<input id="content" name="content" type="hidden" value></input>
<div id="epiceditor"></div>
<button type="submit" name="submit" id="submit">submit</button>
</form>

<script type="text/javascript">
    $('button#submit').click(function(){
        var content = editor.getElement('editor').body.innerHTML; //all the spaces are returned as &nbsp; and breaks are <br>
        $('input#content').html(content);
    });
</script>

注意:我想将我的内容作为 Markdown 保存在我的数据存储的 TextProperty 字段中,并在使用marked.js 检索它时生成html标签

【问题讨论】:

    标签: javascript html web.py mako epiceditor


    【解决方案1】:

    我是 EpicEditor 的创建者。你不应该得到innerHTML。在您编写时,EpicEditor 不会对 innerHTML 做任何事情。您看到的文本和代码在所有浏览器之间都会有所不同,这就是 contenteditable 字段的工作方式。例如,某些浏览器会为一些&amp;nbsp 的空格插入UTF-8 字符。

    EpicEditor 为您提供了标准化文本的方法。您不应该尝试手动解析文本。

    $('button#submit').click(function(){
        var content = editor.exportFile();
        $('input#content').html(content);
    });
    

    更多详情exportFilehttp://epiceditor.com/#exportfilefilenametype

    附:你不需要做输入#内容。这与#content 相同:)

    【讨论】:

    • 另外,请注意,随着 EpicEditor 的发展,编辑器 HTML 中将会有更多标记,可能会添加功能、右键菜单等,因此永远不要依赖内部的 HTML。
    【解决方案2】:

    如果你不知道原因,你可以这样做:

    <script type="text/javascript">
        $('button#submit').click(function(){
            var content = editor.getElement('editor').body.innerHTML; 
            content = content.replace("&nbsp;", " ");
            $('input#content').html(content);
        });
    </script>
    

    【讨论】:

      【解决方案3】:

      [编辑:已解决] 我不应该使用innerHTML,而是使用innerText


      我发现 Epic Editor 在第一个空格之前的所有空格上都使用&amp;nbsp;。这是一个功能,大概。

      但这不是问题所在。所有的空间都被转换为&amp;nbsp;,最终,我意识到它发生在 Epic Editor 从localStorage 加载自动保存的内容时。

      我现在每次都从后端加载内容,而不是自动保存。不是最优的,但可以解决。

      【讨论】:

      • 看我的回答。你让它变得比现在更难:)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-04
      • 2023-03-19
      • 1970-01-01
      • 2022-08-05
      • 2022-01-17
      • 1970-01-01
      相关资源
      最近更新 更多