TGViewer
Логово верстальщика Логово верстальщика @webdevlair · 7.93K subscribers
Post #3866 1K
👩‍💻 Валидация формы с обратной связью

Создайте форму с одним полем ввода для имени и кнопкой "Отправить". При отправке формы выполните следующие условия:

1. Если поле пустое, отобразите сообщение об ошибке под полем.
2. Если поле заполнено, отобразите сообщение "Форма успешно отправлена!".
3. Сообщение об ошибке исчезает при вводе текста.

Решение задачи🔽

<form id="myForm">
<input type="text" id="nameInput" placeholder="Введите имя" />
<button type="submit">Отправить</button>
<p id="error" style="color: red; display: none;">Поле не должно быть пустым</p>
</form>
<p id="success" style="color: green; display: none;">Форма успешно отправлена!</p>

const form = document.getElementById('myForm');
const nameInput = document.getElementById('nameInput');
const error = document.getElementById('error');
const success = document.getElementById('success');

form.addEventListener('submit', (e) => {
e.preventDefault();
if (nameInput.value.trim() === '') {
error.style.display = 'block';
success.style.display = 'none';
} else {
error.style.display = 'none';
success.style.display = 'block';
nameInput.value = '';
}
});

nameInput.addEventListener('input', () => {
if (nameInput.value.trim() !== '') {
error.style.display = 'none';
}
});
  • ❤ 2
  • 👍 2
  • ⚡ 1
More from @webdevlair
  1. Oct 8, 2026Свершилось: в Chrome 155, который выкатили вчера, наконец прикрутили поддержку JPEG XL (.j…
  2. Oct 8, 2026Post #4678
  3. Oct 7, 2026История HTML и CSS: какие элементы и свойства ушли навсегда Люди обожают копаться в прошло…
  4. Oct 7, 2026Post #4676
  5. Oct 7, 2026Выпуск #805 (6 октября 2026) JavaScript Weekly открывается материалом Нолана Лоусона «Why…
  6. Oct 5, 2026Claude теперь работает под надзором — и это, как ни странно, к лучшему Anthropic выпустили…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →