[英]I want to change this paragraph through javascript
document.querySelector("#myBtn").onclick = function () {
console.log("Clicked");
const h1 = document.querySelector("#myH1");
const underline = document.createElement("u");
underline.innerText = "Hey bro.";
h1.innerText = "";
h1.append(underline);
const p = document.querySelector(".myP");
p.forEach((element) => (element.innerText = "Thank You!!!!"));
const btn = document.querySelector("button");
btn.remove();
};
p.forEach((element) => (element.innerText = "Thank You!!!!"));
I got: Error TypeError p.forEach is not a function
我得到:
Error TypeError p.forEach is not a function
querySelector
returns just 1 element. querySelector
只返回 1 个元素。 Use querySelectorAll
to return a list of elements matching the given selector.使用
querySelectorAll
返回与给定选择器匹配的元素列表。
The Document method querySelector()
returns the first Element within the document that matches the specified selector. Document 方法
querySelector()
返回文档中与指定选择器匹配的第一个元素。
You could use the getElementsByClassName
instead您可以改用
getElementsByClassName
var p = document.getElementsByClassName('myP"');
for (let i = 0; i < p.length; i++){
p[i].innerText = "Thank You!!!!";
}
First, Check you createated a query or not.Then variable p is not defined inside the function.use query selector all for return all the elements in the query.首先,检查您是否创建了查询。然后在 function 中未定义变量 p。使用查询选择器全部返回查询中的所有元素。
querySelector returns an array that you can iterate with forEach. querySelector 返回一个可以用 forEach 迭代的数组。 so you just need to change
querySelector
to querySelectorAll
.所以你只需要将
querySelector
更改为querySelectorAll
。
const p = document.querySelectorAll('.myP')
p.forEach((element) => (element.innerText = "Thank You!!!!"));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.