在我的javascript文件中,每个货币符号及其十进制代码都有一个映射,如下所示:
var currency_symbols = {
'EUR':{
'symbol':'€', // Euro
'isPrefix':true
},
'CRC':{
'symbol':'₡', // Costa Rican Colón
'isPrefix':true
},
'GBP':{
'symbol':'₤', // British Pound Sterling
'isPrefix':true
},
'ILS':{
'symbol':'₪', // Israeli New Sheqel
'isPrefix':true
},
'INR':{
'symbol':'₹', // Indian Rupee
'isPrefix':true
},
'KRW':{
'symbol':'₩', // South Korean Won
'isPrefix':true
},
'NGN':{
'symbol':'₦', // Nigerian Naira
'isPrefix':true
},
'PHP':{
'symbol':'₱', // Philippine Peso
'isPrefix':true
},
'PYG':{
'symbol':'₲', // Paraguayan Guarani
'isPrefix':true
},
'UAH':{
'symbol':'₴', // Ukrainian Hryvnia
'isPrefix':true
},
'VND':{
'symbol':'₫', // Vietnamese Dong
'isPrefix':true
}
};
我将用于以不同格式显示货币。当我加载我的Web应用程序时,javascript文件正在非常正确地加载并完美呈现。 但是当我在iFrame中加载我的应用程序时,代码符号十进制值变为如下:
'EUR':{
'symbol':'€', // Euro
'isPrefix':true
},
'CRC':{
'symbol':'₡', // Costa Rican Colón
'isPrefix':true
},
'GBP':{
'symbol':'£', // British Pound Sterling
'isPrefix':true
},
'ILS':{
'symbol':'₪', // Israeli New Sheqel
'isPrefix':true
},
'INR':{
'symbol':'₹', // Indian Rupee
'isPrefix':true
},
'JPY':{
'symbol':'Â¥', // Japanese Yen
'isPrefix':true
},
'KRW':{
'symbol':'â‚©', // South Korean Won
'isPrefix':true
},
'NGN':{
'symbol':'₦', // Nigerian Naira
'isPrefix':true
},
'PHP':{
'symbol':'₱', // Philippine Peso
'isPrefix':true
},
'PLN':{
'symbol':'zł', // Polish Zloty
'isPrefix':true
},
'PYG':{
'symbol':'₲', // Paraguayan Guarani
'isPrefix':true
},
'THB':{
'symbol':'฿', // Thai Baht
'isPrefix':true
},
'UAH':{
'symbol':'â‚´', // Ukrainian Hryvnia
'isPrefix':true
},
'VND':{
'symbol':'â‚«', // Vietnamese Dong
'isPrefix':true
}
由于这个原因无法正确呈现货币代码,如何处理?这个问题的根本原因是什么?这是预期的行为吗?解决此问题的最佳做法是什么。
非常感谢您提出的所有建议
答案 0 :(得分:0)
如果您在IFrame中定义内容的编码。
说明(来源:IFrame Encoding):
iframe中的页面完全独立于“外部” 页面,它可以有任何你想要的字符集。换句话说,每个 页面应指定自己的字符集(并确保它实际上 编码在那个charset)。
所以你可以在IFrame中定义编码,我猜是这样。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
Test
</body>
</html>
这里是工作示例,内容变得很好,如果你仍然面临问题,请使用下面的JSFiddle并分享回来。