设置文本区域内容时防止jQuery转义

设置文本区域内容时防止jQuery转义,jquery,Jquery,我将一些已经转义的文本放到页面上,然后使用jQuery设置文本区域的内容。但它又一次逃脱了。我不想不将文本转义到页面上,因为它是来自数据库的用户输入文本 <script type="text/javascript"> jQuery('#load-template-link').click(function (event) { var content = jQuery('#template-' + jQuery('#template_selector option:select

我将一些已经转义的文本放到页面上,然后使用jQuery设置文本区域的内容。但它又一次逃脱了。我不想不将文本转义到页面上,因为它是来自数据库的用户输入文本

<script type="text/javascript">
jQuery('#load-template-link').click(function (event) {
    var content = jQuery('#template-' + jQuery('#template_selector option:selected').val());

    if (content.length > 0) {
        jQuery('#text-area').val(content.html());
    }

});
</script>

{% for template in templates %}
<script type="text/template" id="template-{{ template.id }}">{{ template.body }}</script>
{% endfor %}

jQuery(“#加载模板链接”)。单击(函数(事件){
var content=jQuery('#template-'+jQuery('#template_选择器选项:selected').val());
如果(content.length>0){
jQuery('#text area').val(content.html());
}
});
{模板%中的模板为%}
{{template.body}}
{%endfor%}

如果通过
escape
您的意思是将html转换为实体,则执行此操作的是
.html
函数。使用
.text

> $("<div>&></div>").html()
"&amp;&gt;"
> $("<div>&></div>").text()
"&>"
$(“&>”).html()
“&;”
>$(“&>”).text()
"&>"
您尝试使用text()而不是html()

我试着使用content.text(),结果没有什么不同,似乎是val()在进行转义
content.text()