Как удалить preventDefault()?

Я хочу временно деактивировать форму и отобразить окно подтверждения независимо от того, хотят ли данные быть отправлены или нет, но у меня возникают проблемы, когда я хочу снова активировать форму.

Код для деактивации формы:

var statusForm = true;
$("form.form-update").submit((e)=>{
    e.preventDefault();
    $("form.form-update input").each((key, element) => {
        if (element.value == "") {
            statusForm = false;
        }
    });
    if (statusForm == false) {
        alert("Data is invalid!");
    }
    else{
        // Show the popup
        $(".confirm-notification").show();
    }
})

Код при нажатии кнопки "да":

// When "yes" button click
$(".confirm-notification-yes").click(()=>{
    // Code to remove preventDefault() on $("form.form-update")
})

Как удалить preventDefault() в $("form.form-update")?

[Задача решена] Проблема была решена совмещением методов unbind() и submit(). Итак, код стал:

$(".confirm-notification-yes").click(()=>{
    $("form.form-update").unbind('submit');
    $("form.form-update").submit();
})

Я немного смущен. Просто удалить строку кода? Вы можете сохранить preventDefault, а затем скрыть форму (отобразить: нет), а затем показать окно подтверждения.

dram95 29.04.2023 17:36

потому что я хочу отправить форму, когда была нажата кнопка «да» при подтверждении. Я запутался, чтобы отправить эту форму.

gunzxx 29.04.2023 17:41
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
2
2
52
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

сделай так

// When "yes" button click
$(".confirm-notification-yes").click(()=>{
// Code to remove preventDefault() on $("form.form-update")
 $("form.form-update").unbind('submit').click();
 })
Ответ принят как подходящий

При ответе «Да» отправьте форму:

$(".confirm-notification-yes").click(()=>{
    $("form.form-update").submit();
})

Теперь давайте исправим первую часть. Я полагаю, что подчинение запускается через кнопку. Вы помещаете свой код в эту кнопку, а не в событие отправки.

$("btn-that-initiates-submission").click(() => {
    e.preventDefault();
    let missingValue = false;
    $("form.form-update input").each((key, element) => {
        if (element.value === "") {
            missingValue = true;
        }
    });
    if (missingValue) {
        alert("There's missing data in the form.");
    }
    else {
        $("confirm-notification").show();
    }
});

спасибо за совет брат. это сработало, когда я объединил метод unbind() с методом submit().

gunzxx 29.04.2023 17:50

Другие вопросы по теме