ajax报错问题的解决

背景:用ajax与服务器页面进行交互

问题:XMLHttpRequest.status==0并且XMLHttpRequest.readyState==0并且textStatus==error

关于XMLHttpRequest.readyState:

状态码 

0 - (未初始化)还没有调用send()方法 

1 - (载入)已调用send()方法,正在发送请求 

2 - (载入完成)send()方法执行完成,已经接收到全部响应内容 

3 - (交互)正在解析响应内容 

4 - (完成)响应内容解析完成,可以在客户端调用了

我在页面调试的时候ajax发送成功并没有任何错误信息返回,但是在直接运行的时候就发生报错

借鉴http://www.cnblogs.com/Mainz/p/3506956.html这篇文章:

jQuery ajax请求错误返回status 0和错误error的问题,分析可能的原因:

  • url不存在(排除)
  • url不可达(排除)
  • 发送了跨域请求(排除)
  • 数据格式错(排除)
  • ajax在完成之前请求已经被取消(ajax请求没有发出),由于,例如:页面已经跳转或跳转太快、浏览器输入新的url、按钮立即新的点击等确定

刚好解释了我在调试的时候并没有发生错误,而直接运行的时候报错的原因

将按钮input的type="submit"改成"button",页面不立即跳转,貌似submit会刷新页面,问题解决。

原文地址:https://www.cnblogs.com/waterfalleagle/p/3534509.html