JavaScript FormData.delete() — видалити поле форми


Метод delete() видаляє поле — разом з усіма його значеннями.

автор: NagarD

Загальний опис

Потрібен, коли FormData зібрано з форми, а відправляти треба не все: прибрати службові поля, приховані токени інтерфейсу, порожні файли.

автор: NagarD

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
delete 7+ 4+ 5+ 12+ 12+ 10+
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
delete 3+ yes yes 5+

Приклади

+ запропонувати свій приклад у пісочниці

Прибрати службові поля перед відправкою.

HTML

<form id="f">
    <input type="hidden" name="_ui_state" value="open">
    <input name="title" value="Запис">
</form>

JS

(async () => {
    const form = document.getElementById('f');
    const data = new FormData(form);

    // службове поле інтерфейсу — серверу не потрібне
    data.delete('_ui_state');

    // порожній файл теж не надсилаємо
    if (data.get('photo') && data.get('photo').size === 0) {
        data.delete('photo');
    }

    console.log('Надсилаємо поля:', [...data.keys()]);

    try {
        await fetch('/api/save', { method: 'POST', body: data });
    } catch (error) {
        console.log('У пісочниці немає сервера:', error.message);
    }
})();
автор: NagarD

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Зворотний зв'язок
Вхід