Почему `return ()` & `onsubmit ()` не работают при создании формы входа на страницу приветствия в html - PullRequest
0 голосов
/ 18 апреля 2020

При создании формы входа на страницу приветствия в HTML, CSS, js возникла проблема с оператором возврата.

создать код для HTML встроенный javascript.

image

Используя выражение return false, он должен прекратить входить на страницу приветствия, но в этом коде он не работает, он переходит на следующую страницу.

Пробовал, что onsubmit="return false; validate();" при использовании этого кода весь блок останавливается и не попадает на страницу приветствия.

Ответы [ 2 ]

0 голосов
/ 18 апреля 2020

Проблема заключалась в том, что в submit не было идентификатора, вы должны объявить id во входе с типом submit. Во-вторых, логика c была неправильной, когда вы проверяли форму, оператор возврата отсутствовал в другой части, когда попытка не была равна нулю.

<!DOCTYPE html>
<html>

<head>
  <title>LOGIN FORM</title>
  <link rel="stylesheet" type="text/css" href="style.css">
 <script type="text/javascript">
var attempt =3;
function validateForm() {

      var username = document.getElementById("username").value;
      var password = document.getElementById("password").value;

      if (username == "dr" && password == "8428") {

        return true;
      } else {
         attempt--;// Decrementing by one.
        alert("You have left " + attempt + " attempt!");
        // Disabling fields after 3 attempts.
        if (attempt == 0) {
        
          document.getElementById("username").disabled = true;
          document.getElementById("password").disabled = true;
          document.getElementById("submit").disabled = true;
         return false;
        }
        
        return false;
      }
      }
  </script>
</head>

<body>
  <div class="loginbox">
    
    <h1>Login Here</h1><br>
    <form action="/loginbox.html" name="myForm"  onsubmit="return validateForm()">
      <div>
        <p>user name</p>
        <input type="text" name="userName" placeholder="Enter User name" id="username">
      </div><br>
      <div>
        <p>password</p>
        <input type="password" name="password" placeholder="Enter password" id="password">
      </div><br>
      <input type="submit" id="submit" value="login"><br>
      <a href="#">Lost your pasword??</a><br>
      <a href="#">don't have an account??</a>
    </form>
  </div>

 

</body>

</html>
0 голосов
/ 18 апреля 2020

Вы используете пробелы в атрибуте id, который неверен, атрибут id не должен иметь никаких пробелов. Кроме того, вам не хватает id = "submit" на кнопке отправки. В вашем коде JS не может выполнить эту строку

            document.getElementById("submit").disabled = true;

, поскольку кнопка отправки не имеет идентификатора. Ниже исправлены ошибки. Это должно работать

image
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...