我想显示基于十六进制代码的货币符号,当我更改国家/地区时,我会使用Ajax获得基于国家/地区的十六进制代码。但是我想显示符号而不是十六进制代码。 我得到了这样的结果
<input aria-invalid="false" placeholder="Currency Symbol" name="currency_symbol" readonly="readonly" id="currency_symbol" class="form-control valid" type="text" value="€">
但是浏览器显示的是十六进制代码;
Ajax响应为:
$('#country_list').on('change', function() {
var country = this.value;
if(country !=0) {
var countries_list = JSON.parse('<?php echo json_encode($countries_list) ?>');
$('#currency_symbol').val(countries_list[country].country_currency_hex);
}
});
我注意到一件事,当我使用开发人员工具并直接将十六进制代码放入时,它会自动更改为符号。
答案 0 :(得分:1)
确定-使用this answer中的技术:
var currentProp = $("#currency_symbol").attr("value");
var parsedProp = $("<textarea/>").html(currentProp).text();
$("#currency_symbol").attr("value", parsedProp);
答案 1 :(得分:0)
json_encode($array, JSON_UNESCAPED_UNICODE);
我希望这对任何解释都有帮助,因为这是常见问题
演示:http://sandbox.onlinephpfunctions.com/code/9b7ca5950b2db0b269b61e9d68d9362bdd41c808