【问题标题】:How to remove unicode character in tinymce formatter.toggle()如何在 tinymce formatter.toggle() 中删除 unicode 字符
【发布时间】:2016-10-27 05:08:40
【问题描述】:

我想做的是在我的编辑器中创建一个标记元素,就像格式化标签一样,即粗体、斜体。

为此,我定义了自定义格式,而 tinymce.init

formats: {
    email: {inline: 'span', classes:'email', remove: 'all'}
}

并且在我的自定义插件中调用了editor.formatter.toggle(markup); 以使用<span class="email" /> 切换选定的文本。它工作正常,但问题是在切换<span class="email">abc@def.com</span> 时,我得到的是文本包含在 unicode 字符中,为"abc@def.com",这会导致进一步切换时出现问题。 如何避免 unicode 字符,就像在 tinymce 中切换格式化元素一样?

【问题讨论】:

  • 你应该解码这些实体
  • 选择.getNode();在选择由 unicode 包围的 时给出整个内容。那么如何解码@RajeshPatel
  • 我以前做过,如果你能提供一些 js 代码,比如你在哪里获取跨度值,那么我可以肯定我会帮助你

标签: javascript jquery unicode tinymce


【解决方案1】:
    <span class="email">abc@def.com</span>
        <script>
              var emailval = $(".email").text();
              //If above is returning which you have mentioned :- "&#65279;abc@def.com&#65279;"  
Then what you can do it is you can decode that 



    var decemailval = $('<div/>').html(emailval).text();

    //Now decemailval should have proper text
    alert(decemailval);
        </script>

【讨论】:

  • 这不可能必须切换 span 与所选文本,这是使用 editor.selection.getNode()
【解决方案2】:

找到解决我的问题的方法。

为防止包含 unicode 字符,在自定义格式中添加了参数selector: "span"

formats: {
    email: {inline: 'span', selector: 'span' classes:'email', remove: 'all', }
}

http://archive.tinymce.com/wiki.php/Configuration3x:formats

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-29
    • 1970-01-01
    • 2017-02-20
    • 2012-07-23
    • 2017-11-28
    相关资源
    最近更新 更多