null
document.getElementById("p").textContent += "You are now connected;"
function myFunction() {
document.getElementById("p").textContent.replace("You are now connected;", "You are disconnected");
}
<p id ="p"></p>
<button onclick="myFunction()">out</button>
null
我使用Javascript创建了一些文本,现在我想在按下按钮后更改文本的内容,但是我遇到了困难。
它不起作用,因为replace
不修改原始值,而是返回结果。 您可以通过将Element.TextContent
分配给Replace
的结果来修复代码。
function myFunction() {
const element = document.getElementById("p")
element.textContent = element.textContent.replace("You are now connected;", "You are disconnected");
}
但是在本例中,使用replace
而不是仅仅分配新值是没有意义的。
function myFunction() {
const element = document.getElementById("p")
element.textContent = "You are disconnected";
}
string.replace()
不执行“就地”操作,而是返回字符串。 将TextContent
设置为操作的结果:
null
document.getElementById("p").textContent += "You are now connected;"
function myFunction() {
document.getElementById("p").textContent = document.getElementById("p").textContent.replace("You are now connected;", "You are disconnected");
}
<p id ="p"></p>
<button onclick="myFunction()">out</button>
replace
创建一个新字符串,但您没有将它分配给您的元素。 你需要分配它。
null
document.getElementById("p").textContent += "You are now connected;"
function myFunction() {
let p = document.getElementById("p");
p.textContent = p.textContent.replace("You are now connected;", "You are disconnected");
}
<p id ="p"></p>
<button onclick="myFunction()">out</button>