Javascript “更改html文件”;至于;用java脚本标记
我需要使用javascript更改扩展中的“for”标签。我不知道怎么做。 提前感谢您的帮助Javascript “更改html文件”;至于;用java脚本标记,javascript,Javascript,我需要使用javascript更改扩展中的“for”标签。我不知道怎么做。 提前感谢您的帮助 <input id="theCheckboxId" type="checkbox" name="theCheckBoxName" /> <label for="theCheckBox">The text I want to change</label> 我要更改的文本 首先给标签一个id <label id="lbl1" for="theCheckBox"
<input id="theCheckboxId" type="checkbox" name="theCheckBoxName" />
<label for="theCheckBox">The text I want to change</label>
我要更改的文本
首先给标签一个id
<label id="lbl1" for="theCheckBox">The text I want to change</label>
编辑
等等,您是要更改值的,还是更改标签的实际文本?在任何情况下,以下是更改文本的方式:
if (label.textContent)
label.textContent = "New Text";
else if (label.innerText)
label.innerText = "New Text"
else
label.innerHTML = "New Text";
要更改文本,请执行以下操作:
document.getElementById('theCheckboxId').nextElementSibling.textContent = 'newValue';
function nextElement( el ) {
while( (el = el.nextSibling) && el.nodeType !== 1 );
return el;
}
nextElement( document.getElementById('theCheckboxId') ).innerHTML = 'newValue';
或者这个:
document.querySelector('#theCheckboxId + label').textContent = 'newValue';
或者,如果需要支持较旧的浏览器,请执行以下操作:
document.getElementById('theCheckboxId').nextElementSibling.textContent = 'newValue';
function nextElement( el ) {
while( (el = el.nextSibling) && el.nodeType !== 1 );
return el;
}
nextElement( document.getElementById('theCheckboxId') ).innerHTML = 'newValue';
您没有问,但如果您使用jQuery,可以通过以下方式简化:
$('label[for="theCheckBox"]').text('your new text')
这就是说,给它一个ID的建议无疑是最有效的选择,尽管我们不知道你是否有权访问HTML(就像你有权访问HTML一样,你可以直接在那里更改文本)是的,我不确定他是想更改文本还是for属性+1.though@AdamRackis:快速查看示例中的当前文本。;)我必须承认,这个标题是骗人的。是的,正是这篇文章让我相信他可能想修改这篇文章……@AdamRackis:啊,是的,我现在知道你已经更新了。@AdamRackis:不,我知道你没有。:)是的,我从未听过有人把它称为“for”标签。另一种更改“for”值的方法是:document.getElementById(“lbl1”).htmlFor=“theCheckboxId”;