Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript “更改html文件”;至于;用java脚本标记_Javascript - Fatal编程技术网

Javascript “更改html文件”;至于;用java脚本标记

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"

我需要使用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">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”;