javascript - 为什么在 domready 上没有为 document.write(x) 显示字符串末尾的实体转义?

标签 javascript jquery document.write html-escape-characters

var target = '<p><img alt=\"\" src=\"upfiles\/54591303758197437.jpg\" \/><\/p>'
$(function(){
    var x=$('<div/>').text(target).html();
    alert(x);
    document.write(x)
});
<script src="//ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

我显示包含 html 标签的转义字符串并写入网页。
alert窗口中的转义字符串是正确的,但是关闭alert窗口后你只能看到(screenshot):

<p><img alt="" src="upfiles/54591303758197437.jpg" /></p

最后一个在哪里>

为什么 <p><img alt="" src="upfiles/54591303758197437.jpg" /></p>不会出现在网页上?

最佳答案

我在 Chrome 69 (Windows) 上有同样的症状。

根据 MDN 的建议,通过添加 document.close() 调用设法修复它:

target = '<p><img alt=\"\" src=\"upfiles\/54591303758197437.jpg\" \/><\/p>'
$(function(){
    x=$('<div/>').text(target).html();
    alert(x);
    document.write(x);
    document.close();
});
<script src="//ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

关于javascript - 为什么在 domready 上没有为 document.write(x) 显示字符串末尾的实体转义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52275666/

相关文章:

javascript - 从 <form> 获取文本输入以在 JS 函数中使用以显示在页面上

javascript - document.writeln 未正确连接 === 比较

javascript - D3 Force Layout - 无重叠链接

JavaScript/CSS : How to start animation from cursor position

javascript - 从 React TypeScript 组件调用外部 Javascript 函数

javascript - jQuery 悬停缩略图,但需要时间更新主镜头,必须 catch

javascript - 已发布使用 JavaScript 将 PHP 数据加载到 HTML 文件的问题

javascript null 比较在 Chrome 和 Firefox 上不同

jquery - 带注释的 Spring 2.5.x MVC portlet 和带有 jQ​​uery+JSON 的 AJAX 错误 : Content Type cant be set to json

javascript - 如何记录、撰写报价?