error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus);
},

扩展阅读:

通过XMLHttpRequest对象向服务器发送请求。
onreadystatechange事件处理函数,它处理来自服务器的触发,而不是处理由用户引起的触发。每当readystatechange事件触发它就执行,而readystatechange事件都是由服务器触发的。每当readyState属性改变,那么onreadystatechange就被触发
var request = getHTTPObject();
if (request) {
  request.onreadystatechange = doSomething;
}

这里注意:doSomething不要括号。表明是函数,加上括号表明是函数执行的结果。doSomethiing是自己编写的函数。

readyState
他包括四个状态:
0 为初始化——open函数还没调用。
1 正在加载——open函数已调用,但send函数没有调用。
2 已加载  ——send函数已调用。
3 正在交互——服务器正在发送响应。
4 完成    ——服务器完成发送响应。

实际中,不是那么的状态,你可以简单使用:
function doSomething() {
  if (request.readyState == 4) {
// do something with the response
  }
}
尽管每次onreadystatechage被服务器触发,但是只有readyState==4的时候才执行代码

status
浏览器在发送请求时,服务器在发送响应时都会发送headers,headers包括文档信息:
文档类型content type (HTML, XML, and so on)
字符编码 (utf-8, iso-8859-1, and so on).

在服务器发送的响应中最重要的是status code:
404:“Not Found”
403:“Forbidden”
500:“Internal Server Error”
200:“OK”这个最常用
304:“Not Modified”

function doSomething() {
  if (request.readyState == 4) {
    if (request.status == 200) {
// 表明服务器发送响应成功
    }
  }
}

opera浏览器有时返回304,所以下面的代码改进
function doSomething() {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
    }
  }
}

ajax 事件使用的更多相关文章

  1. jQuery全局Ajax事件处理器

    1.  .ajaxComplete( handler(event, XMLHttpRequest, ajaxOptions) ) 每当一个Ajax请求完成,jQuery就会触发ajaxComplete ...

  2. jQuery中Ajax事件顺序及各参数含义

    Ajax会触发很多事件.有两种事件,一种是局部事件,一种是全局事件: 局部事件:通过$.ajax来调用并且分配. $.ajax({ beforeSend: function(){ // Handle ...

  3. jQuery下ajax事件的简单分析

    昨天写了一篇关于监视页面动态生成元素问题的文章,引起了一些小小的争议,不过我从中学到了很多.文章在这,<jQuery下实现等待指定元素加载完毕>当然 动态生成的节点元素 分很多种情况,这里 ...

  4. 如何给a标签绑定ajax事件

    <a href="review?action=delete&id=${review.id}&articleId=${review.articleId}"cla ...

  5. jQuery中Ajax事件beforesend及各参数含义

    Ajax会触发很多事件. 有两种事件,一种是局部事件,一种是全局事件: 局部事件:通过$.ajax来调用并且分配. $.ajax({ beforeSend: function(){ // Handle ...

  6. jQuery中Ajax事件beforesend及各参数含义1

    jQuery中Ajax事件beforesend及各参数含义 转自:http://blog.sina.com.cn/s/blog_609f9fdd0100wprz.html Ajax会触发很多事件. 有 ...

  7. js进阶 14-9 ajax事件有哪些

    js进阶 14-9 ajax事件有哪些 一.总结 一句话总结:ajax开始时事件.发送时事件,请求完成时事件,请求成功时事件,请求结束时事件,请求错误时事件事件. 1.ajax事件的监听对象是谁? 都 ...

  8. AJAX 请求完成时执行函数。Ajax 事件。

    ajaxComplete(callback) 概述 AJAX 请求完成时执行函数.Ajax 事件. XMLHttpRequest 对象和设置作为参数传递给回调函数.大理石直角尺 参数 callback ...

  9. jQuery之Ajax--全局Ajax事件处理器

    1.这些方法用于注册事件处理器,用来处理页面上的任何 Ajax 请求,当某些事件触发后,这些事件处理器被调用.如果jQuery.ajaxSteup()中的 global 属性被设置为 true (这也 ...

  10. angularJS项目-ajax事件的按钮loading和页面loading状态 & Controller之间通信-待续

    1).按钮loading --TODO 2). page loading状态 1.在module中注入指令 // Route State Load Spinner(used on page or co ...

随机推荐

  1. HTML基本元素的运用

    段落相关标签<p><br><hr> 格式化相关标签<small><sub><sup><pre> 列表相关标签< ...

  2. Telnet发送邮件之聊以自慰

    北京的冬天,闲着无聊,得做点什么暖暖脑袋,用windows系统自带工具telnet玩了把邮件发送 准备工作: 1.打开windows系统telnet客户端功能 2.准备两个邮箱帐号(xxx@163.c ...

  3. elasticsearch.net search入门使用指南中文版

    原文:http://edu.dmeiyang.com/book/nestusing.html elasticsearch.net为什么会有两个客户端? Elasticsearch.Net是一个非常底层 ...

  4. SQL系统函数——系统信息

    1.查看信息1.1.查看编号和名称select @@SERVERNAME--SQL SERVER服务器的连接字符串,如:computername\instancenameselect @@SERVIC ...

  5. C++获取某个文件夹下的所有文件

    获取某个文件夹下的所有文件,返回各文件的路径加文件名 path为某文件夹的路径:eg. char * filePath = "C:\\Users\\WUQP\\Desktop\\test_d ...

  6. 云计算和SDN中的开源交换机介绍以及使用

    之前关于SDN的开发工作都是在控制器层面上(以ryu为主),现在开始了新的工程项目,需要同时修改控制器和交换机的源码,如果后续项目需要,还可能需要加中间层——网络虚拟层,这部分的知识已经在前面读过了相 ...

  7. 【IDEA】启动项目报错:3 字节的 UTF-8 序列的字节 3 无效

    一.报错和原因: 项目起服务出错.具体报错就不贴了,报错主要是"3 字节的 UTF-8 序列的字节 3 无效". 分析:主要就是项目编码问题,IDEA中估计就是配置不对,没必要纠结 ...

  8. KMS Event LOG

    The 12290 event entry gives a significant amount of information that can be used to figure out what ...

  9. Group By 与 Count

    select UserID,COUNT(0) From [Order] a Group By UserID UserID   (无列名)1             5     2            ...

  10. Spring Mvc4 新特性(一)

    前言 Spring Framework的Web层,由spring-web,spring-webmvc,spring-websocket和spring-webmvc-portlet模块组成. 很多人刚学 ...