tem*_*mpy 34 html javascript button
我有这个HTML按钮:
<button id="myButton" onClick="lock(); toggleText(this.id);">Lock</button>
Run Code Online (Sandbox Code Playgroud)
这是我的toggleText
JavaScript功能:
function toggleText(button_id)
{
if (document.getElementById('button_id').text == "Lock")
{
document.getElementById('button_id').text = "Unlock";
}
else
{
document.getElementById('button_id').text = "Lock";
}
}
Run Code Online (Sandbox Code Playgroud)
据我所知,button text(<button id="myButton">Lock</button>
)就像任何链接文本
(<a href="#">Lock</a>
)一样.所以它是一个按钮并不重要.但是,我无法访问按钮文本并进行更改.
我试过('button_id')
,(button_id)
,== "Lock"
,== 'Lock'
,但没有任何工程.
如何访问和更改按钮文本(非值)或链接文本?
I H*_*azy 57
更改.text
为.textContent
获取/设置文本内容.
或者,由于您正在处理单个文本节点,因此请.firstChild.data
以相同的方式使用.
另外,让我们合理使用变量,享受一些代码减少,并通过缓存结果来消除冗余的DOM选择getElementById
.
function toggleText(button_id)
{
var el = document.getElementById(button_id);
if (el.firstChild.data == "Lock")
{
el.firstChild.data = "Unlock";
}
else
{
el.firstChild.data = "Lock";
}
}
Run Code Online (Sandbox Code Playgroud)
或者更紧凑像这样:
function toggleText(button_id) {
var text = document.getElementById(button_id).firstChild;
text.data = text.data == "Lock" ? "Unlock" : "Lock";
}
Run Code Online (Sandbox Code Playgroud)
elc*_*nrs 19
document.getElementById(button_id).innerHTML = 'Lock';
Run Code Online (Sandbox Code Playgroud)
您可以简单地使用:
document.getElementById(button_id).innerText = 'Your text here';
如果要使用 HTML 格式,请改用innerHTML
属性。