0

您好,我有以下代码行:

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

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

这里 parseInt("0024", 16) = 36$ 将显示 $(dollar) 符号....

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

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

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

我试过这样:

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

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

4

3 回答 3

0

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

于 2013-01-24T15:28:14.913 回答
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

于 2013-01-24T15:34:59.113 回答
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));

现场测试用例

于 2013-01-24T15:35:17.863 回答