Die foreach-Schleife kann nicht für die HTML-Sammlung verwendet werden
P粉930534280
P粉930534280 2023-08-29 09:48:35
0
1
473
<p>Ich habe zwei Dateien, eine davon ist eine JS-Datei:</p> <pre class="brush:php;toolbar:false;">const a = document.getElementsByTagName("body")[0]; const d = a.getElementsByTagName("h1"); d.forEach(element => { element.innerHTML = "Text geändert"; });</pre> <p>Es gibt auch eine HTML-Datei: </p> <pre class="brush:php;toolbar:false;"><!DOCTYPE html> <html lang="en"> <Kopf> <Titel>David </title> </head> <Körper> <h1>Hallo 1</h1> <h2>David</h2> <h3>Ariel</h3> <h4>Yahav</h4> <h1>Hallo 2</h1> <h1>Hallo 3</h1> <script src="food.js"></script> </body> </html></pre> <p>Ich habe versucht, den Text jedes h1-Elements in denselben Text zu ändern, aber es hat nicht funktioniert. Wenn ich es im Browser ausführe, bleibt der gesamte „h1“-Text immer noch derselbe. </p> <p>Ich bin mir nicht sicher, warum, da „d“ eine HTML-Sammlung ist und ich foreach verwende, um darauf auszuführen. </p> <p>Im Grunde ist alles ziemlich einfach, daher bin ich mir nicht sicher, was ich ausprobieren kann. </p> <p>Danke für jede Hilfe! </p>
P粉930534280
P粉930534280

Antworte allen(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 = '新文本'
}
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!