在输入类型=文本中显示html©实体的文本值?

时间:2013-08-27 05:25:12

标签: json html-entities

我正在从包含版权字符的json文件中加载一个值。它作为html实体存储在json中 - ©呈现©。

Handlebars正在为我渲染一个文件编辑器,如果字符串很长,它会变成textarea,如果它很短,那么它就变成了一个文本输入框。呈现为<textarea>时,该值显示为其字符串版本 - 类似于&copy; 2013 blah foo inc,而如果该值写入<input type='text'>值,则浏览器将其呈现为其等效实体,没有字符串本身。我无法弄清楚如何使实体本身的文本值出现,而不是它的解释形状。

2 个答案:

答案 0 :(得分:0)

诀窍是将&copy;更改为&amp;copy;。显示&amp;后变为&

问题不是指定语言,而是用JavaScript做

var content = "&copy; 2013 blah foo inc";
var encoded = content.replace( /&/g, '&amp;' );

答案 1 :(得分:0)

据我所知,您希望将html实体名称(&copy;)转换为输入类型text / textarea中的字符(©)。

var content = "&copy; 2014 blah foo inc";
var copyright = $('<div>').html('&copy;').text();
var encoded = content.replace(/&copy;/g, copyright);
alert(encoded); // or $('#input_id').val(encoded);