ajax技术原理深入解析

合集下载

Ajax基本原理

Ajax基本原理

定规范的浏览器作为通用客户端,从而解决 了 CS , 模式 中最 令人头 疼 的部署和 发布 问题 。但 是 ,到此
并 没有 结束 ,BS虽 然解 决 了应用 的部署 和 发 布 问 /
题 ,却因为种种 限制 ,使得应用没有 了以前丰富的 交互,并且每 次与服务器 的交互都要完全刷 新页
e e a c lg r lv t e h oo y a d s mesmpe a h e i g w y . a e n t i ,a c mp ee e a l ssv n f ra ce rrc mp h n in n t n n e i l c iv n a sB s d o hs o l t x mpe i le o l a o r e so . e e
维普资讯
长沙通信 职业技术学院学报 第 6卷第 2期 2 0 年 6月 07
J un lo h n s aT lcmmu iain o ra fC a gh eeo nc t s o a d 'c n lg o ain olg n l h ooy V c t a C l e e ol e
说,B / S模式是利用 浏览器作为其通用的客户端 , 所以要想异步通讯成为可能,必须要得到浏览器的

KeWod : jxJvS r tD M:o-e s aeicm lt es f s y rs Aa, aaci ' O nn rf hp ̄ ' o pe ns r h p e r n e e re
引 言 计 算 机桌面 应用 使我们 得 以用 以前不 能想 象 的
方式 处理 大 量 的复 杂数 据 ;基 于计 算机 网络 的 CS / 模 式应 用 使得共 享数据 和资 源成 为现 实 。然 而 ,正 如 CS模式 的应 用 是 由于 人们 不满 足 单机 的桌 面应 / 用一 样 ,人 们 对 CS模 式 也 心存 抱 怨 了:CS模 式 / / 除 了带给 我们数 据和 资源共 享 的便利 之外 ,也 给我 们带来 了令我们 程 序 开发 设计 人员) 和客 户 头疼 的 部 署 和 发布 问题 。于 是 , BS模 式 应 用 应 运 而 , 生 ,而 且得 到 了迅 速 的发 展 。BS模 式应 用 符 合一 /

layui中ajax的用法

layui中ajax的用法

layui中ajax的用法Layui是一款轻量级的前端UI框架,它以简洁、易用的设计风格受到广泛关注。

在Layui中,ajax是一种常用的数据交互方式,它可以让网页与后端服务器进行通信,获取或提交数据。

本文将详细介绍Layui中ajax的用法。

一、ajax概述ajax的全称是AsynchronousJavaScriptandXML(异步的JavaScript和XML),它是一种使用JavaScript和XML来与服务器进行通信的技术。

通过ajax,网页可以异步地向服务器请求数据,并在不刷新页面的情况下更新网页的内容。

这种技术可以大大提高网页的交互性和用户体验。

在Layui中,ajax的使用方法与其他JavaScript框架类似,主要包括以下步骤:1.引入Layui的ajax模块首先,需要在HTML文件中引入Layui的ajax模块,以便可以使用其中的功能。

可以在HTML文件的头部引入以下代码:<scriptsrc="/path/to/layui/layui.js"></script>2.创建ajax请求使用Layui的ajax模块,可以很方便地创建ajax请求。

可以使用以下代码创建一个GET请求:e('ajax',function(){varajax=layui.ajax;ajax.get({url:'/path/to/api',//后端服务器的API地址{//发送给服务器的数据key1:value1,key2:value2},success:function(response){//请求成功的回调函数console.log(response);//打印服务器的响应数据},error:function(error){//请求失败的回调函数console.log(error);//打印错误信息}});});3.处理服务器响应当ajax请求成功时,服务器会返回响应数据。

什么是Ajax

什么是Ajax

什么是Ajax
什么是Ajax
Ajax的全称是Asynchronous JavaScript and XML AJAX = 异步 JavaScript 和 XML。

AJAX 是一种用于创建快速动态网页的技术。

通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。

这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

传统的`网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。

有很多使用 AJAX 的应用程序案例:新浪微博、Google 地图、开心网等等。

直白地说,就是没用AJAX的网页,你点一个按钮就要刷新一下页面,尽管新页面上只有一行字和当前页面不一样,但你还是要无聊地等待页面刷新。

用了AJAX之后,你点击,然后页面上的一行字就变化了,页面本身不用刷。

AJAX只是一种技术,不是某种具体的东西。

不同的浏览器有自己实现AJAX的组件。

Ajax是多种技术的组合,包括我们的JavaScript 异步数据获取技术,就是XMLHttpRequest
以及xml以及Dom还有表现技术XHTML 和CSS
Ajax的核心是XMLHttpRequest 是支持异步请求的技术,可以发送请求给服务器,并且不阻塞用户
在IE浏览器中首次引用,使我们的网络应用更加强大。

其实XMLHttpRequest是JavaScript的一种语法子集,是它的一套API,支持发送GET和POST请求。

该API是Ajax开发的核心,也是现在web技术的核心之一。

通过这些技术,我们无序重新加载网页就可以发送和取回数据,
完成交互.
下载全文。

axios和ajax的 用法

axios和ajax的 用法

axios和ajax的用法Axios和Ajax是我们在前端开发中常使用的两种网络请求工具,这篇文章将从基础概念、用法、优缺点等方面来详细介绍它们。

一、基础概念1.1 AxiosAxios是一个基于promise的HTTP客户端,用于浏览器和Node.js平台中发送异步HTTP请求。

Axios支持浏览器和Node.js环境,可以在项目中方便地封装HTTP请求,相较于传统的Ajax和Fetch,Axios提供了更多强大的功能。

1.2 AjaxAjax全称Asynchronous JavaScript and XML,即异步JavaScript和XML技术。

它是一种创建交互式网站的Web开发技术,可以在不刷新网页的情况下对网页进行局部更新。

Ajax技术通过XmlHttpRequest对象实现异步请求数据。

二、用法2.1 AxiosAxios的基础使用非常简单,我们先在项目中引入Axios:``` import axios from 'axios' ```Axios支持链式调用,比如:``` axios.get('/user?id=1') .then(function (response){ console.log(response); }) .catch(function (error) { console.log(error); }); ```以上代码会向服务器发送一个GET请求,并将响应数据打印到控制台。

Axios除了get请求,还可以发送post请求:``` axios.post('/user', { firstName:'John', lastName: 'Doe' }) .then(function (response){ console.log(response); }) .catch(function (error) { console.log(error); }); ```Axios还支持并发请求,比如:``` axios.all([axios.get('/user/1'),axios.get('/user/2')]) .then(axios.spread(functio n (user1, user2) { console.log('User 1',user1); console.log('User 2', user2); }));```上面的代码会同时向服务器发送两个请求,并使用spread方法将返回的数据进行展开。

ajax put 与post的使用方法

ajax put 与post的使用方法

ajax put 与post的使用方法Ajax是一种在Web应用中使用的异步JavaScript和XML技术,它可以使页面无需刷新而与服务器进行数据交互。

其中,Ajax的PUT和POST方法是两种常用的数据传输方式。

本文将介绍Ajax PUT和POST的使用方法,并对其进行详细解析。

一、Ajax PUT方法的使用方法PUT方法用于向服务器发送数据,通常用于更新现有资源。

下面是Ajax PUT的基本使用方法:1. 创建XMLHttpRequest对象我们需要创建一个XMLHttpRequest对象,用于与服务器进行通信。

可以使用以下代码来创建该对象:```javascriptvar xhr = new XMLHttpRequest();```2. 设置请求方法和URL接下来,我们需要设置请求的方法和URL。

对于PUT方法,我们需要使用`xhr.open()`函数来设置请求方法和URL,如下所示:```javascriptxhr.open('PUT', '/api/resource', true);```3. 设置请求头在发送PUT请求之前,我们需要设置请求头,告诉服务器请求的内容类型。

通常,我们可以使用以下代码来设置请求头:```javascriptxhr.setRequestHeader('Content-Type', 'application/json');```4. 发送请求我们可以使用`xhr.send()`函数来发送PUT请求。

如果需要传输数据,可以将数据作为参数传递给该函数,如下所示:```javascriptxhr.send(JSON.stringify(data));```二、Ajax POST方法的使用方法POST方法用于向服务器提交数据,通常用于创建新的资源。

下面是Ajax POST的基本使用方法:1. 创建XMLHttpRequest对象同样,我们需要首先创建一个XMLHttpRequest对象,用于与服务器进行通信:```javascriptvar xhr = new XMLHttpRequest();```2. 设置请求方法和URL然后,我们需要设置请求的方法和URL。

ajax url拼接参数

ajax url拼接参数

ajax url拼接参数使用Ajax进行数据交互是现代Web开发中常用的技术之一。

在实际应用中,我们经常需要向服务器发送请求并获取数据,然后将这些数据展示给用户。

为了向服务器传递特定的参数,我们可以通过拼接URL的方式来实现。

我们需要明确一点,Ajax并不是一种新的编程语言,而是一种利用JavaScript和XML来进行数据交互的技术。

Ajax的全称是Asynchronous JavaScript And XML,即异步的JavaScript和XML。

通过Ajax,我们可以在不刷新整个页面的情况下,与服务器进行数据交互,从而提升用户的体验。

在使用Ajax发送请求时,我们通常会将参数拼接在URL中。

这样,服务器就可以根据这些参数来处理请求,并返回相应的数据。

下面以一个实际的例子来说明如何使用Ajax拼接URL参数。

假设我们正在开发一个电商网站,我们需要根据用户输入的关键字来搜索商品。

当用户在搜索框中输入关键字并点击搜索按钮时,我们需要向服务器发送搜索请求,并将关键字作为参数传递给服务器。

假设我们的搜索接口为`/api/search`,那么我们可以使用Ajax来发送请求,并将关键字拼接在URL中。

我们需要获取用户输入的关键字。

我们可以通过JavaScript来获取输入框的值,然后将其作为参数传递给Ajax请求。

假设我们的输入框的id为`keyword`,可以通过以下代码来获取输入框的值:```var keyword = document.getElementById('keyword').value;```接下来,我们可以使用Ajax来发送请求。

通过创建一个XMLHttpRequest对象,并使用`open`方法指定请求的方法和URL,然后使用`send`方法发送请求。

我们可以将关键字拼接在URL中,以便服务器获取到这个参数。

代码如下:```var xhr = new XMLHttpRequest();var url = '/api/search?keyword=' + keyword;xhr.open('GET', url, true);xhr.send();```在上面的代码中,我们将关键字拼接在URL的查询参数中,使用`?`来分隔URL和查询参数,使用`=`来分隔参数名和参数值。

Ajax中的XMLHttpRequest对象详解

Ajax中的XMLHttpRequest对象详解XMLHttpRequest对象是Ajax技术的核⼼。

在Internet Explorer 5中,XMLHttpRequest对象以ActiveX对象引⼊,被称之为XMLHTTP,它是⼀种⽀持异步请求的技术。

后来Mozilla、Netscape、Safari、Firefox和其他浏览器也提供了XMLHttpRequest类,虽然这些浏览器都提供了XMLHttpRequest类,但它们创建XMLHttpRequest类的⽅法并不相同。

XMLHttpRequest使我们可以使⽤JavaScript向服务器提出请求并处理响应,⽽不阻塞⽤户的其他操作。

不刷新页⾯就和服务器进⾏交互是Ajax最⼤的特点。

这个重要的特点主要归功于XMLHttpRequest对象。

使⽤XMLHttpRequest对象使得⽹页应⽤程序像windows应⽤程序⼀样,能够及时响应⽤户与服务器之间的交互,不必进⾏页⾯刷新或者跳转,并且能够进⾏⼀系列的数据处理,这些功能可以使⽤户的等待时间缩短,同时也减轻了服务器端的负载。

⽬前XMLHttpRequest对象已经得到了⼤部分浏览器的⽀持,因此使⽤Ajax技术开发Web应⽤程序的时候⼀般情况下不会出现问题。

不过,当开发⼈员确定使⽤Ajax技术来开发时,仍然需要考虑⽤户会使⽤什么样的浏览器来对⽹站进⾏访问,虽然不⽀持XMLHttpRequest对象的浏览器占少数。

在使⽤XMLHttpRequest对象向服务器发送请求和处理响应之前,必修先⽤JavaScript创建⼀个XMLHttpRequest对象,然后通过这个对象来和服务器建⽴请求并接收服务器返回的数据。

由于XMLHttpRequest不是⼀个W3C标准,所以可以采⽤多种⽅法使⽤JavaScript来创建XMLHttpRequest的实例。

Internet Explorer把XMLHttpRequest实现为⼀个ActiveX对象,其他浏览器(如Firefox、Safari和Opera等)把它实现为⼀个本地JavaScript对象。

ajax async用法

ajax async用法ajax async用法是指在使用ajax请求时,是否将请求设置为异步执行。

在ajax中,异步请求使得网页可以在请求发送给服务器之后继续进行其他操作,而不需要等待服务器响应。

这篇文章将一步一步回答关于ajax async 用法的问题。

第一步:什么是ajax?Ajax是一种网页开发技术,全称为“Asynchronous JavaScript and XML”(异步的JavaScript和XML)。

它允许网页通过JavaScript在后台与服务器进行通信,从而实现无需刷新整个页面的数据传输和交互。

使用ajax 可以改善用户体验,提高网页的性能和加载速度。

第二步:什么是异步请求?在web开发中,当一个请求被发送到服务器时,浏览器会停止处理其他的事务,直到服务器返回响应。

这种默认的同步请求方式会导致页面的加载和响应速度变慢。

异步请求是指将请求发送给服务器后,网页可以继续执行其他操作,并不需要等待服务器的响应。

第三步:如何设置异步请求?在ajax中,可以通过设置async参数为true或false来控制请求的异步性。

当参数为true时,请求为异步请求;当参数为false时,请求为同步请求。

默认情况下,async参数的值为true,即异步请求。

第四步:异步请求的优势是什么?异步请求具有以下几个优势:1. 提高用户体验:由于异步请求不需要等待服务器响应,网页可以继续进行其他操作。

用户可以在请求发送的同时继续浏览页面,不会感到页面的卡顿或等待。

2. 提高网页性能:异步请求可以减少页面加载时间,因为不需要等待服务器响应之后再加载其他内容。

网页可以在后台同时发送多个异步请求,从而提高网页的并发性能。

3. 节约带宽:由于不需要每次请求都加载整个页面,异步请求只传输需要的数据。

这可以节约带宽和服务器资源,并减轻服务器的负担。

第五步:异步请求的注意事项在使用异步请求时,需要注意以下几点:1. 异步请求的回调函数:异步请求需要设置回调函数来处理服务器的响应。

AJ概念总结

AJ概念总结AJ(Asynchronous JavaScript and XML)是一种基于异步传输数据的网络技术,它可以在不刷新整个页面的情况下,局部地更新数据。

AJ的主要特点是可以实现异步加载和动态更新页面内容,提高用户体验。

1. AJ的工作原理AJ的工作原理可以简单地描述为以下几个步骤:1.用户在浏览器中发起请求,请求某个特定的URL。

2.服务器接收到请求后,根据请求的URL返回相应的数据。

3.浏览器接收到数据后,通过JavaScript解析和处理数据。

4.JavaScript根据解析的数据,更新页面的特定部分,而不需要刷新整个页面。

2. AJ的优势和应用场景AJ相比传统的页面刷新方式具有一些明显的优势,主要体现在以下几个方面:2.1 提高用户体验由于AJ可以在不刷新整个页面的情况下更新数据,用户无需等待整个页面加载完成,可以更快速地获取所需的信息,提高了用户体验。

2.2 减少网络流量传统的页面刷新方式需要每次加载整个页面,而AJ只需要加载更新的数据,减少了不必要的网络流量,提高了页面的加载速度。

2.3 降低服务器负载由于AJ只需要更新局部数据,而不需要重新渲染整个页面,服务器的负载相对较低,提高了服务器的效率和性能。

2.4 动态内容更新AJ可以实现动态内容的更新,可以根据用户的操作动态地更新页面的内容,提供更好的交互性。

AJ常见的应用场景包括但不限于:•异步加载评论或留言板内容•即时通讯和聊天应用•动态更新股票行情•实时搜索和自动补全3. AJ的实现方式AJ的实现方式有多种,常用的包括以下几种:3.1 XMLHttpRequestXMLHttpRequest是AJ的核心对象,它可以在后台传输数据,并更新页面的内容。

通过调用XMLHttpRequest对象的方法,我们可以发送HTTP请求并接收响应。

以下示例展示了一个使用XMLHttpRequest对象实现AJ的基本过程:```javascript var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { // 对返回的数据进行处理 var data = JSON.parse(this.responseText); // 更新页面的内容document.getElementById(。

ajax datatype解读

ajax datatype解读(最新版)目录1.AJAX 简介2.AJAX 的 datatype 参数3.XMLHttpRequest 对象4.datatype 与响应数据的关系5.常用的 datatype 值6.实际应用示例正文AJAX,全称 Asynchronous JavaScript and XML,即异步 JavaScript 和 XML,是一种在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页内容的技术。

在 AJAX 中,datatype 参数是一个关键的概念,它用于指定服务器返回的数据类型。

AJAX 的 datatype 参数是在发送请求时设置的,它告诉服务器期望接收的数据类型。

datatype 参数的值会影响到服务器响应数据的处理方式,以及 XMLHttpRequest 对象的解析方式。

XMLHttpRequest 对象是 AJAX 的核心,它用于与服务器进行通信并接收响应数据。

当服务器返回数据时,XMLHttpRequest 对象会根据datatype 参数的值来解析响应数据,并把它转换为对应的 JavaScript 数据类型。

常用的 datatype 值有以下几种:1."xml":返回 XML 格式的数据,并把响应数据解析为 XML 文档。

2."json":返回 JSON 格式的数据,并把响应数据解析为 JavaScript对象。

3."html":返回 HTML 格式的数据,并把响应数据解析为 HTML 文档。

4."text":返回纯文本格式的数据,并把响应数据解析为字符串。

实际应用中,我们可以根据需要设置 datatype 参数,以便更好地处理服务器返回的数据。

例如,如果我们期望接收 JSON 格式的数据,并想把它解析为 JavaScript 对象,那么我们可以将 datatype 设置为"json"。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Ajax技术原理深入解析 老技术,新技巧 在谈到 Ajax 时,实际上涉及到多种技术,要灵活地运用它必须深入了解这些不同的技术(本系列的头几篇文章将分别讨论这些技术)。好消息是您可能已经非常熟悉其中的大部分技术,更好的是这些技术都很容易学习,并不像完整的编程语言(如 Java 或 Ruby)那样困难。 Ajax 的定义:Ajax 是 Asynchronous JavaScript and XML(以及 DHTML 等)的缩写。这个短语是 Adaptive Path 的 Jesse James Garrett 发明的(请参阅 参考资料),按照 Jesse 的解释,这不是个首字母缩写词。 下面是 Ajax 应用程序所用到的基本技术: HTML 用于建立 Web 表单并确定应用程序其他部分使用的字段。 JavaScript 代码是运行 Ajax 应用程序的核心代码,帮助改进与服务器应用程序的通信。 DHTML 或 Dynamic HTML,用于动态更新表单。我们将使用div、span和其他动态 HTML 元素来标记 HTML。 文档对象模型 DOM 用于(通过 JavaScript 代码)处理 HTML 结构和(某些情况下)服务器返回的 XML。 我们来进一步分析这些技术的职责。以后的文章中我将深入讨论这些技术,目前只要熟悉这些组件和技术就可以了。对这些代码越熟悉,就越容易从对这些技术的零散了解转变到真正把握这些技术(同时也真正打开了 Web 应用程序开发的大门)。 XMLHttpRequest 对象 要了解的一个对象可能对您来说也是最陌生的,即XMLHttpRequest。这是一个 JavaScript 对象,创建该对象很简单,如清单 1 所示。 清单 1. 创建新的 XMLHttpRequest 对象 < script language="javascript" type="text/javascript"> var xmlHttp = new XMLHttpRequest(); < /script> 现在要知道这是处理所有服务器通信的对象。继续阅读之前,先停下来想一想:通过XMLHttpRequest对象与服务器进行对话的是 JavaScript 技术。这不是一般的应用程序流,这恰恰是 Ajax 的强大功能的来源。 在一般的 Web 应用程序中,用户填写表单字段并单击 Submit 按钮。然后整个表单发送到服务器,服务器将它转发给处理表单的脚本(通常是 PHP 或 Java,也可能是 CGI 进程或者类似的东西),脚本执行完成后再发送回全新的页面。该页面可能是带有已经填充某些数据的新表单的 HTML,也可能是确认页面,或者是具有根据原来表单中输入数据选择的某些选项的页面。当然,在服务器上的脚本或程序处理和返回新表单时用户必须等待。屏幕变成一片空白,等到服务器返回数据后再重新绘制。这就是交互性差的原因,用户得不到立即反馈,因此感觉不同于桌面应用程序。 Ajax 基本上就是把 JavaScript 技术和XMLHttpRequest对象放在 Web 表单和服务器之间。当用户填写表单时,数据发送给一些 JavaScript 代码而不是直接发送给服务器。相反,JavaScript 代码捕获表单数据并向服务器发送请求。同时用户屏幕上的表单也不会闪烁、消失或延迟。换句话说,JavaScript 代码在幕后发送请求,用户甚至不知道请求的发出。更好的是,请求是异步发送的,就是说 JavaScript 代码(和用户)不用等待服务器的响应。因此用户可以继续输入数据、滚动屏幕和使用应用程序。 然后,服务器将数据返回 JavaScript 代码(仍然在 Web 表单中),后者决定如何处理这些数据。它可以迅速更新表单数据,让人感觉应用程序是立即完成的,表单没有提交或刷新而用户得到了新数据。JavaScript 代码甚至可以对收到的数据执行某种计算,再发送另一个请求,完全不需要用户干预!这就是XMLHttpRequest的强大之处。它可以根据需要自行与服务器进行交互,用户甚至可以完全不知道幕后发生的一切。结果就是类似于桌面应用程序的动态、快速响应、高交互性的体验,但是背后又拥有互联网的全部强大力量。

加入一些 JavaScript 得到XMLHttpRequest的句柄后,其他的 JavaScript 代码就非常简单了。事实上,我们将使用 JavaScript 代码完成非常基本的任务: 获取表单数据:JavaScript 代码很容易从 HTML 表单中抽取数据并发送到服务器。 修改表单上的数据:更新表单也很简单,从设置字段值到迅速替换图像。 解析 HTML 和 XML:使用 JavaScript 代码操纵 DOM(请参阅 下一节),处理 HTML 表单服务器返回的 XML 数据的结构。 对于前两点,需要非常熟悉getElementById()方法,如 清单 2 所示。 清单 2. 用 JavaScript 代码捕获和设置字段值 // Get the value of the "phone" field and stuff it in a variable called phone var phone = document.getElementById("phone").value; // Set some values on a form using an array called response document.getElementById("order").value = response[0]; document.getElementById("address").value = response[1]; 这里没有特别需要注意的地方,真是好极了!您应该认识到这里并没有非常复杂的东西。只要掌握了XMLHttpRequest,Ajax 应用程序的其他部分就是如 清单 2 所示的简单 JavaScript 代码了,混合有少量的 HTML。同时,还要用一点儿 DOM,我们就来看看吧。 以 DOM 结束 最后还有 DOM,即文档对象模型。可能对有些读者来说 DOM 有点儿令人生畏,HTML 设计者很少使用它,即使 JavaScript 程序员也不大用到它,除非要完成某项高端编程任务。大量使用 DOM 的是复杂的 Java 和 C/C++ 程序,这可能就是 DOM 被认为难以学习的原因。 幸运的是,在 JavaScript 技术中使用 DOM 很容易,也非常直观。现在,按照常规也许应该说明如何使用 DOM,或者至少要给出一些示例代码,但这样做也可能误导您。即使不理会 DOM,仍然能深入地探讨 Ajax,这也是我准备采用的方法。以后的文章将再次讨论 DOM,现在只要知道可能需要 DOM 就可以了。当需要在 JavaScript 代码和服务器之间传递 XML 和改变 HTML 表单的时候,我们再深入研究 DOM。没有它也能做一些有趣的工作,因此现在就把 DOM 放到一边吧。 获取 Request 对象 有了上面的基础知识后,我们来看看一些具体的例子。XMLHttpRequest是 Ajax 应用程序的核心,而且对很多读者来说可能还比较陌生,我们就从这里开始吧。从 清单 1 可以看出,创建和使用这个对象非常简单,不是吗?等一等。 还记得几年前的那些讨厌的浏览器战争吗?没有一样东西在不同的浏览器上得到同样的结果。不管您是否相信,这些战争仍然在继续,虽然规模较小。但令人奇怪的是,XMLHttpRequest成了这场战争的牺牲品之一。因此获得XMLHttpRequest对象可能需要采用不同的方法。下面我将详细地进行解释。 使用 Microsoft 浏览器 Microsoft 浏览器 Internet Explorer 使用 MSXML 解析器处理 XML(可以通过 参考资料 进一步了解 MSXML)。因此如果编写的 Ajax 应用程序要和 Internet Explorer 打交道,那么必须用一种特殊的方式创建对象。 但并不是这么简单。根据 Internet Explorer 中安装的 JavaScript 技术版本不同,MSXML 实际上有两种不同的版本,因此必须对这两种情况分别编写代码。请参阅 清单 3,其中的代码在 Microsoft 浏览器上创建了一个XMLHttpRequest。 清单 3. 在 Microsoft 浏览器上创建 XMLHttpRequest 对象 var xmlHttp = false; try { xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e2) { xmlHttp = false; } } 您对这些代码可能还不完全理解,但没有关系。当本系列文章结束的时候,您将对 JavaScript 编程、错误处理、条件编译等有更深的了解。现在只要牢牢记住其中的两行代码: xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");和xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");。 这两行代码基本上就是尝试使用一个版本的 MSXML 创建对象,如果失败则使用另一个版本创建该对象。不错吧?如果都不成功,则将xmlHttp变量设为 false,告诉您的代码出现了问题。如果出现这种情况,可能是因为安装了非 Microsoft 浏览器,需要使用不同的代码。 处理 Mozilla 和非 Microsoft 浏览器 如果选择的浏览器不是 Internet Explorer,或者为非 Microsoft 浏览器编写代码,就需要使用不同的代码。事实上就是 清单 1 所示的一行简单代码: var xmlHttp = new XMLHttpRequest object;。

相关文档
最新文档