2020-05-14 ajax第一次不执行window location href,第二次才执行

参考资料:https://blog.csdn.net/weixin_43889841/article/details/98503817

最近做绑定页面,输入手机号、验证码,提交绑定请求,请求成功后扔跳转到绑定页面,再次发送绑定请求能跳转到正确页面,解决办法如下:

示例代码

解决方法一:

在$.ajax方法外,加上return false;

解决办法二:

将button的 type=submit 改为 type=button


为什么要加呢?

在表单中的button默认类型是submit,如果你触发ajax请求的是button,而你的button又在表单中,那么在你发送请求后,在执行success回调方法之前会提交表单,如果我们好好了解一下表单和ajax请求区别的话,可以知道表单是要刷新整个界面的,所以当你发送请求后,会提交表单,这时候你的界面就不是你之前的界面了,所以我们要让他发完请求后不要提交表单,也就是用return false终止

既然我们知道了原理,那我们也大可以这样,把button从表单拿出来,或者说不需要表单你就干脆把表单删了,反正你是ajax请求,再不济你就设置button的类型不要是submit就好了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。