我正在尝试将占位符“公司名称(可选)更改为”子名称“ .
我无法直接编辑HTML,但我可以使用JavaScript文件 . 我正在尝试使用JavaScript文件访问以下HTML .
<div class="col-md-12">
<input class="not-required" id="company" name="company"
type="text" value="">
<label alt="Company Name (optional)" placeholder="Company Name (optional)"></label>
</div>
下面的代码将"Child's Name"添加到 <input>
,但我想将其添加到 <label>
中 . 标签没有id或类 . 有没有办法从"Company Name (optional) to " Child的名字更改标签占位符?
function myFunction() {
document.getElementById("company").placeholder = "Child's Name";
}
myFunction();
4 回答
您要求输入标记的行为类似于标签 . 您可以直接访问标签标签并进行更改 .
只需在标签标签中添加一个ID,然后将此ID插入
getElementById
即可 .如果要更改显示的文本,请使用
.innerHTML
或.innerText
知道
alt
和placeholder
不是<label>
标签的有效属性 .当您声称无法更改HTML时,可以使用
<input>
引用中的nextElementSibling
来访问<label>
.在
<div>
中,子元素<input>
和<label>
是彼此的兄弟姐妹 .解决方案1
或者,作为一个单行:
注意:
nextElementSibling
返回下一个元素,而nextSibling
返回下一个元素,文本节点或注释节点 . 所以在这种情况下,使用nextSibling
将在label元素之前插入文本内容,而不是在其中 .解决方案2
礼貌LGSon .
或者,作为一个单行: