JS властивість Document.forms
Загальний опис
Властивість forms
в об'єкті Document
відіграє важливу роль у взаємодії з формами на веб-сторінці. Ця властивість надає доступ до колекції всіх форм (<form>
елементів), що знаходяться у поточному документі. Використання forms
є надзвичайно корисним для розробників, які бажають отримати доступ, модифікувати або валідувати дані форми, виконувати дії на основі відправлення форми чи обробляти вхідні дані користувача.
Основна суть та корисність
Document.forms
дозволяє легко взаємодіяти з формами без потреби використовувати складні селектори CSS чи методи обходу DOM для пошуку елементів форми. Це значно спрощує роботу з формами, особливо на сторінках, де присутня велика кількість форм. З її допомогою можна ефективно управляти процесами валідації, відправлення та обробки форм на клієнтській стороні.
Застосування на практиці
Отримання доступу до форм
Для початку, ви можете просто перебрати всі форми на сторінці та вивести їх ідентифікатори в консоль:
for (let i = 0; i < document.forms.length; i++) {
console.log(document.forms[i].id);
}
Цей фрагмент коду проходить через колекцію форм і виводить ідентифікатор кожної форми.
Взаємодія з конкретною формою
Можна легко отримати доступ до конкретної форми за її іменем або ідентифікатором:
let form = document.forms['formName']; // або document.forms.formName
// Взаємодія з елементами форми
form.elements['inputName'].value = 'Нове значення';
Цей код отримує доступ до форми за ім'ям та змінює значення одного з її полів вводу.
Валідація форми перед відправленням
Використання forms
також є корисним для валідації даних форми на клієнтській стороні перед її відправленням:
document.forms['formName'].onsubmit = function() {
let input = this.elements['inputName'];
if (input.value.length === 0) { // Перевірка на заповненість
alert('Будь ласка, заповніть поле.');
return false; // Зупиняє відправлення форми
}
return true; // Дозволяє відправлення форми
};
Цей приклад показує, як перешкодити відправленню форми, якщо поле вводу залишено пустим.
Порада: | Для того, щоб працювати з конкретною формою, ви можете використовувати індекс або ім'я форми у колекції, яку повертає
|
Порада: | Використання |
Порада: | Щоб підвищити безпеку та валідність даних, відправлених через форми, скористайтеся
|
Синтаксис
Document.forms
Значення
Return
Переглядачі
Переглядач | |||||
---|---|---|---|---|---|
1 |
1 |
1 |
12.1 |
12 |
Переглядач | ||||
---|---|---|---|---|
4.4 |
18 |
4 |
1 |
Переглядач | ||
---|---|---|
- |
- |
Приклади
У цьому прикладі кнопка "Показати інформацію про форми" активує функцію, яка перебирає всі форми на сторінці, використовуючи document.forms
, і відображає детальну інформацію про кожну форму, включаючи її id
, action
та деталі всіх полів у формі. Це дозволяє користувачам веб-довідника зрозуміти, як можна використовувати document.forms
для роботи з формами на сторінці, від перегляду інформації про форми до інтерактивного доступу до полів форми.
У цьому прикладі ми використовуємо властивість document.forms
для виведення кількості форм на веб-сторінці. Властивість document.forms
повертає HTMLCollection усіх форм (
У складнішому прикладі розглянемо сценарій, де необхідно валідувати усі форми на сторінці перед їх відправкою. Це дозволить забезпечити, що всі дані, введені користувачем, є коректними та відповідають вимогам, перед тим як дозволити їх відправку на сервер.
// Функція для валідації форми
function validateForm(form) {
// Припустимо, ми перевіряємо, чи всі поля форми заповнені
for (let i = 0; i < form.elements.length; i++) {
if (form.elements[i].value === '') {
alert('Будь ласка, заповніть усі поля у формі.');
return false;
}
}
return true;
}
// Перехоплення події відправки для усіх форм
for (let form of document.forms) {
form.addEventListener('submit', function(event) {
// Перевірка форми на валідність
if (!validateForm(form)) {
event.preventDefault(); // Запобігання відправки форми
}
});
}