javascript - innerHTML设置为包含HTML的字符串的问题
PHPz
PHPz 2017-04-11 13:12:42
[JavaScript讨论组]

在javascript高级程序设计中关于innerHTML讲到:
为innerHTML设置包含HTML的字符串与解析后的innerHTML的值不相同。

p.innerHTML = "Hello & welcome, \"reader\"!"

以上操作得到结果如下:

Hello & welcome, "reader"!

我试了一下并没有出现以上结果,p显示的内容并没有序列化,

请问是我理解错了还是怎么回事?

PHPz
PHPz

学习是最好的投资!

全部回复(3)
PHPz

浏览器自动转义了,你把p换成pre标签试试。
去看了原文,发现题主理解错了,文中的意思是这样的:
输入:

p.innerHTML = 'Hello & welcome, <b>\"reader\"!</b>';

与以下输入等价:

p.innerHTML = 'Hello &amp; welcome, <b>&quot;reader&quot;!</b>';

输出的都是序列化的结果:

Hello & welcome, "reader"!
高洛峰

这个只是实体在浏览器的呈现效果。
你需要使用 innerHTML 才能看到 p 里真正的文本子节点(HTML文本),可以在浏览器 console 中看到你想要的结果。

document.getElementById('content').innerHTML

扩展可以了解下下面的 NODE 属性

document.getElementById('content').textContent
document.getElementById('content').innerText
怪我咯

修改

the result of this operation is as follows

应该就是
@TabWeng 说的以下输入等价的意思,翻译的问题。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号