jquery中ajax使用error调试错误的方法


Posted in Javascript onFebruary 08, 2015

本文实例讲述了jquery中ajax使用error调试错误的方法。分享给大家供大家参考。具体分析如下:

JQuery使我们在开发Ajax应用程序的时候提高了效率,减少了许多兼容性问题,我们在Ajax项目中,遇到ajax异步获取数据出错怎么办,我们可以通过捕捉error事件来获取出错的信息。

jquery中ajax的常用用法类似于:

$(document).ready(function() {
  jQuery("#clearCac").click(function() {
 jQuery.ajax({
   url: url,
   type: "post",
   data: { id: '0' },
   dataType: "json",
   success: function(msg) {
 alert(msg);
   },
   error: function(XMLHttpRequest, textStatus, errorThrown) {
 alert(XMLHttpRequest.status);
 alert(XMLHttpRequest.readyState);
 alert(textStatus);
   },
   complete: function(XMLHttpRequest, textStatus) {
 this; // 调用本次AJAX请求时传递的options参数
   }
 });
  });
});

当通过ajax异步调用成功时,会调用 success函数 。success函数语法为:

//请求成功后回调函数。这个方法有两个参数:服务器返回数据,返回状态
 function (data, textStatus)
 {
  // data could be xmlDoc, jsonObj, html, text, etc...   
  this;
 // the options for this ajax request
 }

当通过ajax异步调用出错时,会调用 error函数 。error函数语法为:

//(默 认: 自动判断 (xml 或 html)) 请求失败时调用时间。
//参数有以下三个:XMLHttpRequest 对象、错误信息、(可选)捕获的错误对象。
//如果发生了错误,错误信息(第二个参数)除了得到null之外,
//还可能是"timeout", "error", "notmodified" 和 "parsererror"。
 
//textStatus: "timeout", "error", "notmodified" 和 "parsererror"。

error:function (XMLHttpRequest, textStatus, errorThrown) 
{ 
 
}

error事件返回的第一个参数XMLHttpRequest:
XMLHttpRequest.readyState: 状态码的意思
0 - (未初始化)还没有调用send()方法
1 - (载入)已调用send()方法,正在发送请求
2 - (载入完成)send()方法执行完成,已经接收到全部响应内容
3 - (交互)正在解析响应内容
4 - (完成)响应内容解析完成,可以在客户端调用了
 
发送error可能有下面两张引起的,或者其他程序问题,需要我们认真仔细。
1、data:"{}", data为空也一定要传"{}";不然返回的是xml格式的。并提示parsererror.
2、parsererror的异常和Header 类型也有关系。及编码header('Content-type: text/html; charset=utf8');

希望本文所述对大家的jQuery程序设计有所帮助。

Javascript 相关文章推荐
ExtJs的Date格式字符代码
Dec 30 Javascript
jquery中使用ajax获取远程页面信息
Nov 13 Javascript
jQuery.trim() 函数及trim()用法详解
Oct 26 Javascript
JS遍历数组及打印数组实例分析
Jan 21 Javascript
原生js实现addClass,removeClass,hasClass方法
Apr 27 Javascript
vue实现全选、反选功能
Nov 17 Javascript
Node中使用ES6语法的基础教程
Jan 05 Javascript
vue axios请求超时的正确处理方法
Apr 02 Javascript
解决vue热替换失效的根本原因
Sep 19 Javascript
vue点击当前路由高亮小案例
Sep 26 Javascript
解决vue单页面应用打包后相对路径、绝对路径相关问题
Aug 14 Javascript
ant design charts 获取后端接口数据展示
May 25 Javascript
JQuery中extend的用法实例分析
Feb 08 #Javascript
jQuery中noConflict()用法实例分析
Feb 08 #Javascript
jquery实现聚光灯效果的方法
Feb 06 #Javascript
js实现Select下拉框具有输入功能的方法
Feb 06 #Javascript
JQuery中serialize()用法实例分析
Feb 06 #Javascript
jQuery中on()方法用法实例详解
Feb 06 #Javascript
JS实现文字向下滚动完整实例
Feb 06 #Javascript
You might like
php HandlerSocket的使用
2011/05/02 PHP
详解PHP内置访问资源的超时时间 time_out file_get_contents read_file
2013/06/03 PHP
php递归调用删除数组空值元素的方法
2015/04/28 PHP
phalcon框架使用指南
2016/02/23 PHP
CodeIgniter常用知识点小结
2016/05/26 PHP
Ubuntu中支持PHP5与PHP7双版本的简单实现
2018/08/19 PHP
详细对比php中类继承和接口继承
2018/10/11 PHP
DIV始终居中的js代码
2014/02/17 Javascript
js 创建对象 经典模式全面了解
2016/08/16 Javascript
jQuery实现简单的网页换肤效果示例
2016/09/18 Javascript
Javascript单例模式的介绍和实例
2016/10/08 Javascript
深入理解bootstrap框架之入门准备
2016/10/09 Javascript
jQuery实现导航高亮的方法【附demo源码下载】
2016/11/09 Javascript
react.js 翻页插件实例代码
2017/01/19 Javascript
深入理解Commonjs规范及Node模块实现
2017/05/17 Javascript
详解基于webpack2.x的vue2.x的多页面站点
2017/08/21 Javascript
nodejs实现简单的gulp打包
2017/12/21 NodeJs
js console.log打印对象时属性缺失的解决方法
2019/05/23 Javascript
微信小程序 多行文本显示...+显示更多按钮和收起更多按钮功能
2019/09/26 Javascript
vue项目打包后提交到git上为什么没有dist这个文件的解决方法
2020/09/16 Javascript
如何在vue中使用HTML 5 拖放API
2021/01/14 Vue.js
[01:08:57]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第二场
2014/05/24 DOTA
python dict.get()和dict['key']的区别详解
2016/06/30 Python
Python实现针对给定单链表删除指定节点的方法
2018/04/12 Python
python traceback捕获并打印异常的方法
2018/08/31 Python
python 列表递归求和、计数、求最大元素的实例
2018/11/28 Python
python暴力解压rar加密文件过程详解
2019/07/05 Python
Mac在python3环境下安装virtualwrapper遇到的问题及解决方法
2019/07/09 Python
Python 实现文件读写、坐标寻址、查找替换功能
2019/09/11 Python
Python3 mmap内存映射文件示例解析
2020/03/23 Python
利用Python实现Json序列化库的方法步骤
2020/09/09 Python
Hurley官方网站:扎根于海滩生活方式的全球青年文化品牌
2020/05/18 全球购物
个人总结格式范文
2015/03/09 职场文书
2015公司年度工作总结
2015/05/14 职场文书
保留意见审计报告
2015/06/05 职场文书
消费者理赔投诉书
2015/07/02 职场文书