Моя страница не будет перенаправлять на URL с помощью функции - PullRequest
0 голосов
/ 25 апреля 2020

Итак, у меня есть проект, для которого требуется образец страницы входа, при этом он работал, но теперь он не открывает URL в операторе If

function validate() {
    var usern = document.getElementById("userIn").value;
    var passw = document.getElementById("passIn").value;
    var position = -1;

    var usernArray = ["User1", "User2"];
    var passwArray = ["Pass1", "Pass2"];

    for (var i=0; i <usernArray.length; i++) {
        if ((usern == usernArray[i]) && (passw == passwArray[i])) {
            position = i;
            break;
        }
    }

    if (position != -1) 
    {
        alert("Login Was Successful!, You are being redirected to the homepage");
        window.location.href = 'home.html';
    }
    else 
    {
        alert("Invalid Username and/or Password! Please try again.")
    }
}

Ответы [ 2 ]

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

Вы можете решить эту проблему, добавив к кнопке в вашей форме атрибут: type = "button"

<button type="button" onclick="validate()">Login</button>

, и ваш код будет работать отлично, но обратите внимание, что вам нужно рассмотреть также отправляемую форму (нажав кнопку Enter на клавиатуре). Возможно, попробуйте изменить свой код на это:

<script>
    $('#form').on('submit', function(e) {
        var usern = document.getElementById("userIn").value;
        var passw = document.getElementById("passIn").value;
        var position = -1;

        var usernArray = ["User1", "User2"];
        var passwArray = ["Pass1", "Pass2"];

        for (var i=0; i <usernArray.length; i++) {
            if ((usern == usernArray[i]) && (passw == passwArray[i])) {
                position = i;
                break;
            }
        }

        if (position != -1)
        {
            alert("Login Was Successful!, You are being redirected to the homepage");
            window.location.href = 'home.html';
        }
        else
        {
            alert("Invalid Username and/or Password! Please try again.")
        }

        e.preventDefault();
        return false;
    });
</script>

и установите для атрибута типа для вашей кнопки значение submit

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

Не могли бы вы попробовать это window.location.href=/home.html, так что это относительно текущего домена. Или вы можете попробовать window.location.replace вместо href.

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