English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Разница между getElementById().innerHTML и getElementById().value

Потому что всегда есть новички, которые задают этот вопрос, поэтому редактор呐喊 tutorial特别整理了一些方法供需要的朋友参考。

Простыми словами: для форм используется value, для вставки символов используется innerHTML

Например, <input type="text" value="" id="jb51" />

Теги с атрибутом value могут использовать getElementById("jb51").value
Например, <div id="jb51">12345</div>

Такие теги без атрибута value можно получить с помощью getElementById("jb51").innerHTML

Вы можете использовать document.getElementById() для получения элемента на странице с идентификатором
Затем вы можете получить атрибуты этого элемента, например, value

Когда у элемента есть атрибут value, только тогда он имеет значение
Пример 1
<input type="text" id="txt1" value="hello"/>
Такой элемент, когда вы используете document.getElementById("txt1").value, вы можете получить его значение value, например, строку "hello".

Если у элемента нет значения value, то при использовании document.getElementById().value вы не сможете получить его. Это совершенно логично, что можно получить то, чего нет?
Например, для тега div не всегда есть значение value.

innerHTML
Это означает содержимое элемента
Пример 2

Элемент имеет начаточный и завершающий маркеры, например

<label id="lb1">this is a label</label>

Когда вы используете document.getElementById("lb1").innerHTML, вы можете получить содержимое между <label> и </label>, например, "this is a label".

Основной учебник
Тебе может понравиться