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

  • 相关阅读:
    适配器模式
    注册模式
    工厂模式
    策略模式和注入控制反转
    验签
    php中加密和解密
    asp.net textbox keyup事件触发后台的textchange事件
    jquery $.post 返回json数据
    网页播放音频、视频文件——基于web的html 5的音乐播放器(转载)
    c# 柱状图(转载)
  • 原文地址:https://www.cnblogs.com/sunzhenyong/p/4001847.html
Copyright © 2020-2023  润新知