从 Javascript 转换回 HTML 实体

Convert back to HTML entities from Javascript

本文关键字:HTML 实体 转换 Javascript      更新时间:2023-09-26

嗨,我有以下代码行:

$('#chooseCurrencyType').append("<li>"+key+" - &#"+parseInt(data[key], 16)+"</li>");

它在 html 中显示如下:USD - $

在这里parseInt("0024", 16) = 36和 &#36 将显示 $(美元) 符号....

所以在执行下面的代码...

($('.dropdown-toggle').text())  gives me $..

但是如何从javascript获取值0024或如何将其转换回html实体....

我试过这样:

($('.dropdown-toggle').text()).substring(6,7).charCodeAt(0);  gives me 36 .... 

那么如何将 36 转换为 0024 ......请帮忙....

听起来您想将字符转换回十六进制值?它与HTML实体并不真正相关。

无论如何,代码将是:

function CharToHex(s) {
    var ascii = s.charCodeAt(0);
    return "0x" + Number(ascii).toString(16)
}

用法:

var hex = CharToHex("$");
alert(hex + "'n" + parseInt(hex, 16));

实时测试用例。

首先,为什么不直接使用&#x20AC;?除此之外,要找回它,您可以尝试JSON.stringify然后与/''u([0-9a-f]+)/比赛

为什么不使用 charCodes?它更容易转换。例如:

var n=String.fromCharCode(1255); // ӧ
alert(n);
n = n.charCodeAt(0); // 1255
alert(n);

以下是完整列表: http://en.wikipedia.org/wiki/List_of_Unicode_characters