我正在从包含版权字符的json文件中加载一个值。它作为html实体存储在json中 - ©
呈现©。
Handlebars正在为我渲染一个文件编辑器,如果字符串很长,它会变成textarea,如果它很短,那么它就变成了一个文本输入框。呈现为<textarea>
时,该值显示为其字符串版本 - 类似于© 2013 blah foo inc
,而如果该值写入<input type='text'>
值,则浏览器将其呈现为其等效实体,没有字符串本身。我无法弄清楚如何使实体本身的文本值出现,而不是它的解释形状。
答案 0 :(得分:0)
诀窍是将©
更改为&copy;
。显示&
后变为&
。
问题不是指定语言,而是用JavaScript做
var content = "© 2013 blah foo inc";
var encoded = content.replace( /&/g, '&' );
答案 1 :(得分:0)
据我所知,您希望将html实体名称(©
)转换为输入类型text
/ textarea
中的字符(©)。
var content = "© 2014 blah foo inc";
var copyright = $('<div>').html('©').text();
var encoded = content.replace(/©/g, copyright);
alert(encoded); // or $('#input_id').val(encoded);