Всегда используйте свойство value
для изменения значения <textarea>
.
Кажется распространенным заблуждением, что innerHTML
является жизнеспособным или даже лучшим способом сделать это. Это ни то, ни другое.
Что происходит, так это то, что изменение свойства innerHTML
текстовой области будет работать только до тех пор, пока значение не будет изменено, либо пользователем, редактирующим содержимое текстовой области, либо скриптом, изменяющим свойство value
, поскольку узлы элемента textarea представляют только его начальное значение.
Это не имеет ничего общего с соответствием стандартам или иным образом innerHTML
, или то, что только один текстовый узел является допустимым в элементе <textarea>
: вы получаете точно такое же поведение, если пытаетесь изменить nodeValue
свойство текстового узла, содержащегося в элементе <textarea>
.