【问题标题】:JavaScript: HTML entity converter (Entity to UNICODE & CSS escaped)JavaScript:HTML 实体转换器(实体到 UNICODE 和 CSS 转义)
【发布时间】:2015-07-15 19:36:27
【问题描述】:

我想在该字段中输入一个 HTML 实体,当我点击提交时,有它各自的 UNICODE 和 CSS“内容”代码,但我遗漏了一些东西:

http://jsfiddle.net/nadqnhbc/3/

HTML

<h1>Convert HTML entities into UNICODE & CSS</h1>

<p>Example: Enter &amp;#128038; into the field.</p>
<input type="text" name="ampWhat">
<br>
<input id="submit" type="submit" value="Submit">


<div id="result">
    <span id="result-unicode"></span>
    <span id="result-css"></span>
</div>

JS

window.addEventListener("DOMContentLoaded", function () {

    document.getElementById("submit").addEventListener("click", function () {
        var entity = document.getElementById("ampWhat").value;
        alert(entity); //Code to convert into UNICODE: U+1F426 OR CSS: "/01F426"
    });

});

【问题讨论】:

    标签: javascript jquery html css unicode


    【解决方案1】:

    要像浏览器一样安全准确地将 HTML 实体解码为原始 Unicode 符号,请使用 the he.decode(string) functionality 附带的 the he library

    var input = 'Enter &#128038; into the field.';
    var decoded = he.decode(input);
    console.log(decoded);
    // → 'Enter ? into the field.'
    

    稍后要将非 ASCII 字符转换为 CSS 转义序列,请使用 cssesc

    var escaped = cssesc(decoded);
    console.log(escaped);
    // → 'Enter \1F426  into the field.'
    

    这里有一个 jsFiddle 展示了这一点:https://jsfiddle.net/mathias/fbp7bftk/

    【讨论】:

    • 我在下载时迷路了。可以添加到jsFiddle吗?
    • @Omar jsFiddle 链接已添加。
    猜你喜欢
    • 1970-01-01
    • 2015-06-11
    • 1970-01-01
    • 2015-03-07
    • 1970-01-01
    • 2023-02-07
    • 2019-04-17
    • 1970-01-01
    • 2012-07-26
    相关资源
    最近更新 更多