背景:用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会刷新页面,问题解决。