Задать вопрос
MOCTPECT
@MOCTPECT

Адаптивная высота textarea без клавиатурного ввода текста (текст вводится JS)?

Добрый день!

Столкнулся с тем, что все предлагаемые способы адаптации высоты textarea основаны на вводе в поле текста.
У меня текст вводится по клику (из другого JS) и он помещается в textarea и не адаптирует высоту поля под себя.

Текста всегда разное кол-во.
  • Вопрос задан
  • 78 просмотров
Подписаться 1 Средний 5 комментариев
Пригласить эксперта
Ответы на вопрос 1
@agaliullin
ИТ наставник
Что-то типо такого не подходит?

<textarea id="myTextarea" rows="1" style="overflow:hidden; resize:none;"></textarea>
<button onclick="insertText()">Вставить текст</button>


function autoResizeTextarea(textarea) {
  textarea.style.height = 'auto'; // сброс высоты
  textarea.style.height = textarea.scrollHeight + 'px'; // установка по контенту
}

function insertText() {
  const textarea = document.getElementById('myTextarea');
  textarea.value = 'Это текст, вставленный скриптом. Он может быть длинным и занимать несколько строк.';
  autoResizeTextarea(textarea);
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы