• AJAX onreadystatechange 事件


    AJAX - onreadystatechange 事件

    ·                          Previous Page

    ·                          Next Page

    onreadystatechange 事件

    当请求被发送到服务器时,我们需要执行一些基于响应的任务。

    每当 readyState 改变时,就会触发onreadystatechange 事件。

    readyState 属性存有 XMLHttpRequest 的状态信息。

    下面是 XMLHttpRequest 对象的三个重要的属性:

    属性

    描述

    onreadystatechange

    存储函数(或函数名),每当 readyState 属性改变时,就会调用该函数。

    readyState

    存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。

    ·                          0: 请求未初始化

    ·                          1: 服务器连接已建立

    ·                          2: 请求已接收

    ·                          3: 请求处理中

    ·                          4: 请求已完成,且响应已就绪

    status

    200: "OK"

    404: 未找到页面

    在 onreadystatechange 事件中,我们规定当服务器响应已做好被处理的准备时所执行的任务。

    当 readyState 等于 4 且状态为 200 时,表示响应已就绪:

    xmlhttp.onreadystatechange=function()

      {

      if (xmlhttp.readyState==4 &&xmlhttp.status==200)

        {

       document.getElementById("myDiv").innerHTML=xmlhttp.responseText;

        }

      }

    亲自试一试

    注释:onreadystatechange 事件被触发 4 次,对应着 readyState 的每个变化。

    使用 Callback 函数

    callback 函数是一种以参数形式传递给另一个函数的函数。

    如果您的网站上存在多个 AJAX 任务,那么您应该为创建XMLHttpRequest 对象编写一个标准的函数,并为每个 AJAX 任务调用该函数。

    该函数调用应该包含 URL 以及发生onreadystatechange 事件时执行的任务(每次调用可能不尽相同):

    functionmyFunction()

    {

    loadXMLDoc("ajax_info.txt",function()

      {

      if (xmlhttp.readyState==4 &&xmlhttp.status==200)

        {

       document.getElementById("myDiv").innerHTML=xmlhttp.responseText;

        }

      });

    }

    亲自试一试

    来自:http://www.w3school.com.cn

    廖世勇
  • 相关阅读:
    Kubernetes——安装GlusterFS分布式文件系统
    Jenkins从入门到精通——SonarQube:持续代码质量检查
    Jenkins从入门到精通——代码质量
    Redis从入门到精通——Redis数据类型——1、字符串(String)命令
    Redis从入门到精通——Redis客户端
    并发查询ElasticSearch, 根据分片来实现
    Golang开源定时任务调度框架robfig/cron优化
    解决Ubuntu17.04以上系统,yarn init报错
    Angularjs中的$q详解
    总结那些有默认margin,padding值的html标签
  • 原文地址:https://www.cnblogs.com/liaoshiyong/p/3150990.html
Copyright © 2020-2023  润新知