什么是输入元素的innerHTML?

tem*_*ame 20 html javascript dom dom-manipulation

我只想从维基百科的chrome控制台上做这件事.我将光标放在搜索栏中,然后尝试这样做,document.activeElement.innerHTML += "some text"但它不起作用.我用Google搜索并查看其他属性和属性,但无法弄清楚我做错了什么.

activeElement选择器工作正常,但选择正确的元素.

编辑:我刚发现它是value属性.所以我想改变我的要求.为什么改变innerHTML输入元素的工作?如果我不能做任何事情,为什么他们有这个属性?

Aji*_*h S 28

设置value通常用于输入/表单元素.innerHTML通常用于div,span,td和类似元素.

value 仅适用于具有value属性的对象(通常是表单控件).

innerHtml适用于可以包含的每个对象HTML(div,spans,但许多其他对象以及表单控件).

它们不等同或可替换.取决于你想要达到的目标


Sho*_*ate 12

首先要了解在哪里使用什么.

<input type="text" value="23" id="age">
Run Code Online (Sandbox Code Playgroud)

现在这里

var ageElem=document.getElementById('age');
Run Code Online (Sandbox Code Playgroud)

所以在这ageElem你可以有很多事情元素,您可以用什么contains.So它value,type等属性.但是不能使用innerHTML,因为我们不在输入标记之间写任何东西

  <button id='ageButton'>Display Age</button>
Run Code Online (Sandbox Code Playgroud)

所以这里Display Age是innerHTML内容,因为它是在HTML标签按钮内编写的.


Jer*_*oen 5

在input标签上使用innerHTML只会导致:

<input name="button" value="Click" ... > InnerHTML Goes Here </input>
Run Code Online (Sandbox Code Playgroud)

但是,由于输入标签不需要结束标签,因此它将重置为:

<input name="button" value="Click" ... />

因此,您的浏览器可能正在应用更改并立即将其重置。