登录脚本AJAX成功后重定向失效,如何排查修复?
登录脚本无法实现页面重定向的问题排查
先看你代码里的重定向逻辑,问题出在这一行错误的代码上:
/*F5_*/ F5_Deflate_location( /*_5F##*/ window /*F5_*/ ) /*_5F#.location#*/ .assign = redirecturl;
问题根源:
assign是window.location对象的方法,必须通过assign(跳转地址)的方式调用,你现在是直接给这个方法赋值字符串,完全不符合语法逻辑,自然不会触发跳转。- 代码里的
F5_Deflate_location是多余的混淆/错误代码,正常页面跳转不需要这类函数,直接操作原生的window.location即可。 - 你注释掉的
window.location.href = getUrlPath() + redirect;才是正确的跳转写法,却被你注释不用了。
修正方案:
把错误的重定向代码替换成以下任意一种正确写法:
写法一(最常用):
showFullScreenLoadMask(false); var redirecturl = getUrlPath() + "/Login/Index"; window.location.href = redirecturl;
写法二(使用assign方法):
showFullScreenLoadMask(false); var redirecturl = getUrlPath() + "/Login/Index"; window.location.assign(redirecturl);
额外验证步骤:
- 打开浏览器控制台(F12),在
result.success === true分支里加一行console.log("跳转触发,地址:", redirecturl),确认这个分支确实被执行,排除是登录成功条件未满足的问题。 - 检查
getUrlPath()返回的路径是否正确,避免出现//Login/Index这类重复斜杠的情况(浏览器虽会自动修正,但尽量保证路径规范)。
内容的提问来源于stack exchange,提问作者Peter Love
相关产品推荐
相关产品推荐

