Якщо ви вимкнете елемент fieldset перед читанням даних форми за допомогою конструктора FormData, дані будуть порожніми.
// Find my form
const $form = document.querySelector('.my-form')
// Find all fieldsets inside my form
const $fieldsets = $form.querySelectorAll('fieldset')
// Set all fieldsets as disabled
if($fieldsets.length) {
$fieldsets.forEach($fieldset => {
$fieldset.setAttribute('disabled', true)
})
}
// Construct FormData from the form
const formData = new FormData($form)
// You cannot log formData directly
console.log(Array.from(formData))
Отже, якщо ви хочете вимкнути елемент fieldset, ви повинні зробити це після використання конструктора FormData.
// Find my form
const $form = document.querySelector('.my-form')
// Find all fieldsets inside my form
const $fieldsets = $form.querySelectorAll('fieldset')
// Construct FormData from the form
const formData = new FormData($form)
// You cannot log formData directly
console.log(Array.from(formData))
// Output: [...] - works
// Set all fieldsets as disabled
if($fieldsets.length) {
$fieldsets.forEach($fieldset => {
$fieldset.setAttribute('disabled', true)
})
}
Крім того, якщо ваші поля вимкнено, вони також не будуть включені у FormData.