По существу, я пытаюсь перенаправить мою веб-страницу при успешном входе в систему. У меня успешный вход в систему, он не перенаправляется на новую страницу позже. Он обновляет текущую страницу, на которой он включен.window.location = "location.html";
Форма, которую я использую для ввода пользователем.
<!-- Login Details -->
<form name = "loginForm" onsubmit = "validate(this);">
<p>
<label for = "username"> Username: </label>
<input type = "text" id = "username" name = "user"/>
</p>
<p> <label for = "password"> Password: </label>
<input type = "password" id = "password" name = "pass" required/>
</p>
<p class = "submit">
<input type = "submit" value = "Submit"/>
</p>
</form>
И теперь для его стороны javascript;
var user = form.user.value;
var pass = form.pass.value;
var valid = false;
var userArray = ["admin", "kevin", "mark", "paul", "conor"]; // ("admin1", "admin2", "admin3") As many as you like - no comma after final entry.
var passArray = ["pass", "pass1", "pass2", "pass3", "pass4"]; // ("Password1", "Password2", "Password3") the corresponding passwords;
for (var i = 0; i < userArray.length; i++)
{
if ((user == userArray[i]) && (pass == passArray[i]))
{
valid = true;
//alert("Login was successful");
break;
}
}
if (valid == true)
{
alert ("Login was successful");
window.location = 'mainmenu.html';
return false;
}
Я пробовал новое местоположение, используя двойные и одинарные кавычки. Ничего не работает. Цените помощь :)
Protip: использовать '' === это лучшая практика. Появляется ли ваше предупреждение? Условие может не передаваться, что означает, что ваш оператор if может быть неправильным. –
Отправка формы перезагружает страницу, если вы не вызываете 'event.preventDefault()' в обработчике отправки. – Barmar
Кроме того, вы можете знать об этом, но если JavaScript работает на клиенте (то есть в веб-браузере), нет ничего, что мешало бы кому-то смотреть на исходный код и видеть все пароли, а также URL страницы браузер будет перенаправлен после входа в систему. – JCOC611