如何用JavaScript的if/else语句实现用户登录后页面跳转?
修复方案
你遇到的跳转失败有两个核心错误,按下面的步骤修改即可:
- 错误1:
window.location.href是属性不是函数,你当前用括号调用的写法完全错误,正确用法是直接给它赋值你要跳转的页面地址。 - 错误2:你绑定点击事件的按钮是
submit类型,点击后会触发表单的默认提交行为,刷新当前页面,就算跳转代码写对了,也会被页面刷新打断导致失效。
修改后的代码
JavaScript代码修改:
'use strict' function validate(e){ // 阻止表单默认提交刷新页面的行为 e.preventDefault(); var username=document.getElementById('login-username').value; // 注意你此处变量名拼写有误(passowrd应为password),当前前后一致未报错,建议后续修正 var passowrd=document.getElementById('login-password').value; if (username === "daksh" && passowrd === 'daksh'){ alert('登录成功'); // 直接给href赋值你要跳转的本地页面地址即可,比如项目内的首页home.html window.location.href = "./home.html"; } else{ alert('用户名或密码错误'); } }
HTML代码修改:
只需要修改提交按钮的onclick属性,传入事件对象即可:
<input type="submit" value="Login" id="login-submit" onclick="validate(event)">
内容的提问来源于stack exchange,提问作者Daksh Sharma
相关产品推荐
相关产品推荐

