无法在HTML集合上使用foreach循环
P粉930534280
P粉930534280 2023-08-29 09:48:35
[HTML讨论组]
<p>我有两个文件,一个是js文件:</p> <pre class="brush:php;toolbar:false;">const a = document.getElementsByTagName(&quot;body&quot;)[0]; const d = a.getElementsByTagName(&quot;h1&quot;); d.forEach(element =&gt; { element.innerHTML = &quot;文本已更改&quot;; });</pre> <p>还有一个是html文件:</p> <pre class="brush:php;toolbar:false;">&lt;!DOCTYPE html&gt; &lt;html lang=&quot;en&quot;&gt; &lt;head&gt; &lt;title&gt;David &lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;h1&gt;你好1&lt;/h1&gt; &lt;h2&gt;大卫&lt;/h2&gt; &lt;h3&gt;亚里尔&lt;/h3&gt; &lt;h4&gt;雅哈夫&lt;/h4&gt; &lt;h1&gt;你好2&lt;/h1&gt; &lt;h1&gt;你好3&lt;/h1&gt; &lt;script src=&quot;food.js&quot;&gt;&lt;/script&gt; &lt;/body&gt; &lt;/html&gt;</pre> <p>我试图将每个h1元素的文本更改为相同的文本,但是它没有起作用,也就是说当我在浏览器上运行时,所有的"h1"文本仍然保持不变。</p> <p>不确定为什么,因为"d"是一个html集合,我用foreach在它上面运行。</p> <p>基本上一切都很简单,所以不确定我可以尝试什么。</p> <p>感谢任何帮助!</p>
P粉930534280
P粉930534280

全部回复(1)
P粉864594965

你不应该使用forEach,因为HTMLCollections没有实现forEach方法。

使用for循环

const a = document.getElementsByTagName('body')[0]
const d = a.getElementsByTagName('h1')

for (let elem of d) {
    elem.innerHTML = '新文本'
}
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

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