@GGatsby

Почему все ровно происходить перезагрузка браузера при e.preventDefault?

Хочу вызвать функцию по клику, при этом использую e.preventDefault

validate(){
    var form = document.forms[0];
    var username = form.elements["username"];
    var password = form.elements["password"];
    var email = form.elements["email"];
    var phone = form.elements["phone"];
    var button = form.elements["button"];
    
    function userValid(){
      if (username.value.length < 2) {
        console.log("name is too short");
      } else {
        console.log("it's work");
      }
      e.preventDefault();
    }
    
    button.addEventListener("click", function(e){
      userValid();
      // _passValid();
      // _emailValid();
      // _phoneValid();
      e.preventDefault();
    });
  • Вопрос задан
  • 171 просмотр
Решения вопроса 1
Rema1ns
@Rema1ns
и так сойдет
потому что e.prevantDefault всегда пишут 1й строкой
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@tyzberd
Ответ написан
Комментировать
Переменной e не существует в функции userValid, либо передавайте ее туда, либо вызовите preventDefault прямо в button.addEventListener("click", function(e){
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы