Всплывающее сообщение SweetAlert с JavaScript при заполнении полей

Я хотел, чтобы Sweetalert работало только в том случае, если все fields заполнены. Я пробовал больше версий кода, я нашел ответы здесь на форуме, но ничего не помогло. Теперь, если я не заполню все поля и нажму на submit, я получу уведомление из-за HTML, но всплывающее окно тоже появится.

Как вы можете видеть здесь, несмотря на то, что я получил всплывающее окно, я не заполнил последнее поле ввода .

function Sweetalert1(){
    var name = document.getElementById("name");
    var message = document.getElementById("message");
    var email = document.getElementById("email");

    if ((name != "" && message != "" && email != "") {
        Swal.fire(
                'Köszönjük!',
                'Megkaptuk a leveledet és hamarosan válaszolunk!',
                'success'

    }
}

person g.mark11    schedule 23.06.2019    source источник


Ответы (1)


Вам нужно получить значение ваших входных данных формы. В настоящее время все ваши name, message и email являются Element и, таким образом, ни один из них не равен "". Итак, ваше утверждение if действительно выглядит так:

if (true && true && true) {
  // code..
}

Вместо этого вы можете получить значения из ваших элементов ввода:

var name = document.getElementById("name").value;
var message = document.getElementById("message").value;
var email = document.getElementById("email").value;

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

person Nick Parsons    schedule 23.06.2019