Ajax技术能向服务器异步请求额外的数据,会带来更好的用户体验。
Ajax技术核心:XMLHttpRequest对象(简称XHR)。
XHR为向服务器发送请求和解析服务器响应提供了流畅的接口。

1、创建XMLHttpRequest对象
创建XMLHttpRequest对象:
1 var xhr = new XMLHttpRequest();
注:IE7+、Firefox、Opera、Chrome和Safari支持原生XHR对象。
(但是我测试IE5也支持原生XHR对象,可能是做了更新)

IE7及之前的版本需要使用MSXML库中的XHR对象。
如下所示,可以兼容几乎所有浏览器:
 1 function createXHR() {
2 if(typeof XMLHttpRequest != "undefined"){
3 return new XMLHttpRequest(); //IE7+、Firefox、Opera、Chrome、Safari
4 }
5 else if(typeof ActiveXObject != "undefined"){
6 return new ActiveXObject("Microsoft.XMLHTTP"); //IE7及以前版本的浏览器
7 }
8 else{
9 throw new Error("No XHR object available.");
10 }
11 }
12 var xhr = createXHR();

2、XHR用法

 1 var xhr = createXHR();                                                     //创建XHR对象
2 xhr.onreadystatechange = function(){ //readyState状态改变及触发onreadystatechange事件
3 if(xhr.readyState == 4){ //readyState状态改变可从0到4,4表示所有数据已就绪
4 if((xhr.status >= 200 && xhr.status <300) || xhr.status == 304){ //status为200,响应成功;为304,表示请求的资源未被修改
5 alert(xhr.responseText); //responseText表示响应主体返回的文本
6     } else {
7 alert(“Request was unsuccessful: ” + xhr.status);
8     }
9   }
10 };
11 xhr.open(“get”, “test.php”, true); //启动一个请求以备发送
12 xhr.send(null); //发送请求

Javascript Ajax总结——XMLHttpRequest对象的更多相关文章

  1. AJAX 核心 —— XMLHTTPRequest 对象回顾

    一.AJAX概述 不使用 AJAX 的网页,如果要更新内容,需要重载整个页面. AJAX ( Asynchronous Javascript And XML ,异步 Javascript 和 XML) ...

  2. js进阶ajax的XMLHttpRequest对象的status和statustext属性(如果ajax和php联合使用的话:open连接服务器的第二个参数文件路径改成请求php的url即可)

    js进阶ajax的XMLHttpRequest对象的status和statustext属性(如果ajax和php联合使用的话:open连接服务器的第二个参数文件路径改成请求php的url即可) 一.总 ...

  3. AJAX——核心XMLHttpRequest对象

    AJAX大家已经都知道了,是为了实现异步通讯,提高用户体验度,而将很多旧知识(XML,DOM,JavaScript,HTML,Jquery,Css……)重新融合的一个新的知识框架.而,XMLHttpR ...

  4. 详解AJAX核心 —— XMLHttpRequest 对象 (下)

    继续上一篇的内容上一篇关于XMLHttpRequest 对象发送对服务器的请求只说到了用Get方式,没有说Post方式的.那是因为要说Post方式就需要先说另外一个东西,那就是DOM(Document ...

  5. Ajax的XMLHttpRequest对象

    编写一个例子:从服务器取回一个Hello Ajax字符串. HTML: <input type="button" value="ajax提交" oncli ...

  6. AJAX核心XMLHTTPRequest对象

    老早就写好了总结.今天整理发表一下. XMLHttpRequest对象是AJAX的核心技术,XMLHttpRequest 是XMLHTTP 组件的对象,通过这个对象.AJAX能够像桌面应用程序一样仅仅 ...

  7. AJAX——理解XMLHttpRequest对象

    AJAX大家已经都知道了,XMLHttpRequest对象则是AJAX的核心.这篇博客重点总结一下这个对象的使用. XMLHttpRequest对象的属性和方法: 属性 说明 readyState 表 ...

  8. 详解AJAX核心 —— XMLHttpRequest 对象 (上)

    我要说的内容都是非常基础的内容,高手就免看了,如果看了欢迎给点意见啊.新手或者对低层还不是很了解的人可以看看,帮助理解与记忆. XMLHttpRequest 对象是AJAX功能的核心,要开发AJAX程 ...

  9. [置顶] Ajax核心--XMLHttpRequest对象

    XMLHttpRequest 对象是AJAX功能的核心,学习XMLHttpRequest对象就先从创建XMLHttpRequest 对象开始,了解在不同的浏览器中创建XMLHttpRequest 对象 ...

  10. AJAX - 创建 XMLHttpRequest 对象

    XMLHttpRequest 是 AJAX 的基础. XMLHttpRequest 对象 所有现代浏览器均支持 XMLHttpRequest 对象(IE5 和 IE6 使用 ActiveXObject ...

随机推荐

  1. Unity UGUI的ScrollRect(滚动视图)组件的介绍及使用

    Unity UGUI的ScrollRect(滚动视图)组件的介绍及使用 1. 什么是ScrollRect组件? ScrollRect(滚动视图)是Unity UGUI中的一个常用组件,用于在UI界面中 ...

  2. 618京东到家APP-门详页反爬实战

    一.背景与系统安全需求分析 1. 系统的重要性 上图所示是接口所属位置.对电商平台或在线商店而言,分类查商品都是很重要的,通过为用户提供清晰的商品分类,帮助他们快速找到所需产品,节省浏览时间,提升购物 ...

  3. 如何查询4GL程序中创建的临时表中的数据

    前提:将dba_segments这个表的select权限授权给各个营运中心(即数据库用户) ①.用sys账号以dba的权限登录数据库 <topprod:/u1/topprod/tiptop> ...

  4. a-2b

    a-2b   描述 输入两个高精度数a和b,求a-2b的值. 输入 输入两行,第一行是被减数a,第二行是减数b(a>2b并且a,2b的位数不同且不存在借位,且b+b不存在进位). 输出 一行,即 ...

  5. CSE 2023 混合年度回声周末

    CSE 2023 混合年度回声周末(2023 年 4 月 13 日至 15 日)25 周年银周年纪念版 近 900 名参与者参加.又是成功的伟大一年.明年 2024 年 4 月在多伦多见.敬请关注全年 ...

  6. 基于 Angular和Material autocomplete组件再封装的可双向绑定key-value的可输入下拉框

    GitHub: https://github.com/Xinzheng-Li/AngularCustomerComponent 效果图:为了方便使用,把许多比如ADD的功能去了,可以在使用后自行实现. ...

  7. 文心一言 VS 讯飞星火 VS chatgpt (110)-- 算法导论10.2 1题

    一.用go语言,单链表上的动态集合操作 INSERT 能否在 O(1)时间内实现?DELETE 操作呢? 文心一言: 在单链表中,INSERT 和 DELETE 操作的时间复杂度通常是 O(n),其中 ...

  8. Qt信号槽与事件循环学习笔记

    事件与事件循环 信号槽机制 事件与事件循环 在Qt中,事件(event)被封装为QEvent类/子类对象,用来表示应用内部或外部发生的各种事情.事件可以被任何QObject子类的对象接收并处理. 根据 ...

  9. 题解 CF1264D1

    前言 数学符号约定: \(\dbinom{n}{m}\):表示 \(n\) 选 \(m\) . 如非特殊说明,将会按照上述约定书写符号. 题目分析: 考虑题目的问题弱一点的版本,假设此时我们的括号序列 ...

  10. 大白话说Python+Flask入门(一)

    写在前面 技术这东西就得用,不用就会忘,之前写博客感觉就是给自己记笔记用,还有大部分,估计睡在语雀里都落灰了,哈哈! 在Python领域,我觉得我还是算个小白吧,会写讲不明白,所以我决定想做一件事,先 ...