从Javascript转换回HTML实体

时间:2013-01-24 15:25:53

标签: javascript

您好我有以下代码行:

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

在html中显示如下:USD - $

此处parseInt("0024", 16) = 36和&amp;#36将显示$(美元)符号....

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

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

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

我试过这样:

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

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

3 个答案:

答案 0 :(得分:0)

首先,为什么不使用&#x20AC;?除此之外,要将其恢复,您可以尝试JSON.stringify,然后与/\\u([0-9a-f]+)/

匹配

答案 1 :(得分:0)

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

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

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

答案 2 :(得分:0)

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

无论如何,代码将是:

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

用法:

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

Live test case