我有这个脚本,应该在单击按钮时更改按钮的文本。
<body>
<button onclick="toggleText(this);" id="id">Edit</button>
</body>
function toggleText(element){
var text = document.getElementById(element.id).textContent;
if (text == 'Edit') {
text = 'Done';
} else {
text = 'Edit';
}
}
但是这不起作用。仅当您将 document.getElementById(element.id).textContent
直接放入 if 语句中时,它才有效。
如何正确存储变量?
最佳答案
由于您已经获取了该元素,因此无需再次获取。您可以只使用元素。
但是您无法更改它的原因是您只是更改包含文本的变量。它不指向元素的属性。您需要使用这个:
function toggleText(element){
var text = element.textContent;
if (text == 'Edit') {
element.textContent = 'Done';
} else {
element.textContent = 'Edit';
}
}
关于javascript - 将 document.getElementById 存储在变量中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29614210/