【问题标题】:javascript unicode characters; keep hexcode valuejavascript unicode 字符;保留十六进制值
【发布时间】:2018-06-28 08:35:28
【问题描述】:

我有一个自制的文本编辑器,具有可以将 unicode 字符插入(可编辑)div 的功能。例如,扬声器图标由以下字符串表示:

🔊

并且在将此字符串作为文本节点插入后,它将直接在 div 中正确呈现为

??????

当我导出编辑器的内容时​​,我基本上提交了 div.innerHTML 并存储在 mysql 数据库中。

然而,我希望 innerHTML 保留/保留字符的十六进制表示,而不是呈现的版本,例如输出字符串,如

this is a <span style='color:green'>speaker-icon: &#x1f50a;</span> in my message.

原因是在 mysql 中,图标被存储为 '???' . Mysql 使用 utf8mb4_general_ci 作为排序规则。此外,无论排序如何,我都希望尽可能地保持 HTML 的可移植性。

这可能吗?

PS 我使用 PHP 作为后端。

【问题讨论】:

  • 在 MySQL 中正确存储它是一个非常可解决的问题:stackoverflow.com/a/34637891/476。我还认为,正确的 UTF-8 比 HTML 实体更便携,后者仅在 HTML 上下文中相关。

标签: javascript html unicode


【解决方案1】:

可能连接没有在连接和/或列定义中指定 utf8mb4。

Trouble with UTF-8 characters; what I see is not what I stored中的“问号”

【讨论】:

    猜你喜欢
    • 2014-03-07
    • 2014-12-28
    • 1970-01-01
    • 2017-08-04
    • 2011-05-14
    • 1970-01-01
    • 2012-12-06
    • 2014-01-02
    • 2018-01-22
    相关资源
    最近更新 更多