zoukankan      html  css  js  c++  java
  • ajax 事件使用

    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) {
        }
      }
    }

  • 相关阅读:
    Html笔记(四)图像
    Html笔记(三)列表
    Html笔记(二)字体
    Html笔记(一)概述
    mysql基础~经典题目
    MGR架构~原理细节分析(8.0最新版)
    hiveserver2
    恋爱心理
    和谐之道
    智者遇事求心,庸者遇事求境
  • 原文地址:https://www.cnblogs.com/sunzhenyong/p/4001847.html
Copyright © 2011-2022 走看看