【问题标题】:Special symbols in wysihtml5 editorwysihtml5 编辑器中的特殊符号
【发布时间】:2015-09-09 19:30:26
【问题描述】:

我在我的网站上使用wysihtml5 编辑器,我希望拥有以下功能 - 如果用户插入带有特殊字符的文本,它们将被转换为 html 实体。

例如,用户插入:

"Sample text, sample text, sample text ©"

我需要将其转换为:

"Sample text, sample text, sample text ©"

我没有在编辑器文档中找到任何与特殊符号相关的信息。我想到的一种方法是在这一步为粘贴事件创建监听器并处理特殊字符。

您能否建议将此功能添加到编辑器的最佳方式是什么?

【问题讨论】:

  • 是否可以将其更改为 XML 实体(例如 ©)?这很容易,但使用命名符号将需要大量转换...
  • @dandavis 是的,我想我们也可以使用十进制代码

标签: javascript special-characters html-entities wysihtml5


【解决方案1】:

您可以使用 RegExp 字符范围通过动态函数来替换()它们:

strNew=strOld.replace(
  /([\u00A0-\u00FF])/g,  
  function(j,a){
             return "&#" + parseInt(a.charCodeAt(0), 16) + ";" ;
  }
);

现场演示:http://pagedemos.com/27w7n4n58qpk

这可以从您从编辑器返回的字符串中应用,或者我猜是在编辑器的 contenteditable 标记的 innerHTML 上。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-31
    相关资源
    最近更新 更多