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

Как сделать в инпутах текст, через js?

Всем привет! У меня есть разметка, в которой есть текст. Через js я его меняю в инпутах. Изначально, когда еще текст не меняется в инпутах поля пустые. Как сделать, чтоб текст из разметки отображался в полях инпута изначально, который можно сразу редактировать? То-есть, когда в разметке меняю текст, то в поле инпута появляется этот текст и его можно в инпуте редактировать.
Если в разметке нет текста, то поля должны быть пустыми, где написанно: "Имя", "Фамилия"
Ссылка на код https://playcode.io/533725/
У меня получается так
5eb5820067279803915634.png
А надо так
5eb58210a4833575452546.png
  • Вопрос задан
  • 3368 просмотров
Подписаться 2 Средний 9 комментариев
Решения вопроса 1
joko_pain
@joko_pain
Грешу веб-разработкой и не много дизайном
Если я вас правильно понял то вам нужно что-то такое:
<h1 class="Name preName">GGG</h1>
<p class="Family preSurname">JJJJJJJ</p>


<form class="container">
  <input type="text" name="profileName" class="newName inputName" placeholder="Имя" value="Текст">
  <input type="text" name="aboutMe" class="newFamily inputSurname" placeholder="Фамилия" value="Текст">
  <button type class="button">Сохранить</button>
</form>


и js:
//Находим элементы "вёрстки"
let name = document.querySelector(".preName")
let surname = document.querySelector(".preSurname")

//Находим инпуты
let inputName = document.querySelector(".inputName")
let inputSurname = document.querySelector(".inputSurname")

// Проверяем если элемент не пуст то его содержимое помещаем в инпут
if (name.innerHTML() !== "") {
    inputName.value = name.innerHTML();
}

// или можно записать ещё короче

inputSurname.value = (surname.innerHTML() !== "") ? surname.innerHTML() : "";
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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