ThinkPHP & jQuery.ajax 登录功能,无法重定向,自动刷新

本文探讨了在使用Ajax实现登录模块时遇到的两个问题:界面刷新和重定向无效。通过分析原因,提供了相应的解决方案。包括将表单提交按钮的type属性更改为button来避免页面刷新,以及前端根据后端返回值判断登录状态并进行界面跳转的方法。

最近自己搞一个管理系统玩玩,登录模块为了人性化一些,使用ajax,判断用户输入的数据的正确与否。
但是遇见两个问题:
1. 无论登陆成功与否,ajax的success方法执行完毕之后都会隐形刷新一次界面。
2. 登陆成功之后,在后台使用TP的redirect方法重定向无效。

1.总是刷新界面。

因为当时代码里提交按钮的type=”submit”,结果虽然是使用了onclick事件,通过ajax来进行登录,但是还是会提交表单。导致页面刷新。

将button的type=”button”就好了

2. 重定向无效

百度谷歌了不少,大概的结论是,redirect的重定向还是会想浏览器发送header,修改http头从而使浏览器重定向。但是当时异步的ajax还没有执行完,所以会无效。而且一般都不用这种方法重定向。

通过ajax的登录,重定向的方法是前端根据后端返回值,判断登陆成功与否,然后进行界面跳转。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值