一、ajax 简介:
ajax 全名:Asynchronous JavaScript And Xml 即:异步JavaScript和XML。
AJAX 基于 JavaScript 和 HTTP 请求(HTTP requests)。
AJAX 可以动态的得到响应结果,并且更重要的是还不需要刷新页面。
AJAX 不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的 Web 应用程序的技术。
通过 AJAX,您的 JavaScript 可使用 JavaScript 的 XMLHttpRequest 对象来直接与服务器进行通信。通过这个对象,您的 JavaScript 可在不重载页面的情况与 Web 服务器交换数据。
AJAX 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页从服务器请求少量的信息,而不是整个页面。
AJAX 可使因特网应用程序更小、更快,更友好。
AJAX 是一种独立于 Web 服务器软件的浏览器技术。
AJAX 的要点是 XMLHttpRequest 对象。
二、请求服务器的ajax API:
XMLHttpRequest 对象的几个重要的属性和方法:
1、onreadystatechange 属性:定义一个函数,此函数处理服务器响应。当 readyState 改变时会调用此方法。
xmlHttp.onreadystatechange=function()
{
// 我们需要在这里写一些代码
}
2、readyState 属性:存有服务器响应的状态信息。每当 readyState 改变时,onreadystatechange 函数就会被执行。
HTTP 请求的状态.当一个 XMLHttpRequest 初次创建时,这个属性的值从 0 开始,直到接收到完整的 HTTP 响应,这个值增加到 4。
readyState 属性可能的值:
0 请求未初始化(在调用 open() 之前)
1 请求已提出(调用 send() 之前)
2 请求已发送(这里通常可以从响应得到内容头部)
3 请求处理中(响应中通常有部分数据可用,但是服务器还没有完成响应)
4 请求已完成(可以访问服务器响应并使用它)
xmlHttp.onreadystatechange=function()
{
if(xmlHttp.readyState==4
)
{
// 从服务器的response获得数据
}
}
3、responseText 属性:取回由服务器返回的数据。
如果 readyState 小于 3,这个属性就是一个空字符串。当 readyState 为 3,这个属性返回目前已经接收的响应部分。如果 readyState 为 4,这个属性保存了完整的响应体。
xmlHttp.onreadystatechange=function()
{
if(xmlHttp.readyState==4)
{
document.myForm.time.value=xmlHttp.responseText
;
}
}
4、responseXML 属性:对请求的响应,解析为 XML 并作为 Document 对象返回。
var xmlDoc=xmlHttp.responseXML.documentElement; //得到一个document
5、status 属性:由服务器返回的 HTTP 状态代码,如 200 表示成功,而 404 表示 "Not Found" 错误。当 readyState 小于 3 的时候读取这一属性会导致一个异常。
6、statusText 属性:
这个属性用名称而不是数字指定了请求的 HTTP 的状态代码。也就是说,当状态为 200 的时候它是 "OK",当状态为 404 的时候它是 "Not Found"。和 status 属性一样,当 readyState 小于 3 的时候读取这一属性会导致一个异常。
7、open("GET","time.asp",true) 方法:定义请求的服务器。初始化 HTTP 请求参数,例如 URL 和 HTTP 方法,但是并不发送请求。
第一个参数定义发送请求所使用的方法(GET 还是 POST)。
第二个参数规定服务器端脚本的 URL。
第三个参数规定应当对请求进行异步地处理。
8、send() 方法:将请求送往服务器。使用传递给 open() 方法的参数,以及传递给该方法的可选请求体。
属于ajax请求服务器。
9、setRequestHeader() 方法:向一个打开但未发送的请求设置或添加一个 HTTP 请求。
10、abort() 方法:
取消当前响应,关闭连接并且结束任何未决的网络活动。这个方法把 XMLHttpRequest 对象重置为 readyState 为 0 的状态,并且取消所有未决的网络活动。例如,如果请求用了太长时间,而且响应不再必要的时候,可以调用这个方法。
11、getAllResponseHeaders() 方法:
把 HTTP 响应头部作为未解析的字符串返回。如果 readyState 小于 3,这个方法返回 null。否则,它返回服务器发送的所有 HTTP 响应的头部。头部作为单个的字符串返回,一行一个头部。每行用换行符 "\r\n" 隔开。
12、getResponseHeader() 方法:
返回指定的 HTTP 响应头部的值。其参数是要返回的 HTTP 响应头部的名称。可以使用任何大小写来制定这个头部名字,和响应头部的比较是不区分大小写的。该方法的返回值是指定的 HTTP 响应头部的值,如果没有接收到这个头部或者 readyState 小于 3 则为空字符串。如果接收到多个有指定名称的头部,这个头部的值被连接起来并返回,使用逗号和空格分隔开各个头部的值。
三、服务器端脚本
1、response.expires=-1
expires 属性可设置在页面缓存失效前页面被缓存的时间(分钟)。response.expires=-1 指示页面不会被缓存。
四、页面显示
1、在界面中由 web 服务器所取回的信息的位置占位符通常用以下标签表示:<span id=""> <div id=""> <p id="">
2、在js中填充占位符
document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
五、实例
事例:当您开始在 Google 的搜索框中输入查询时,JavaScript 会向某个服务器发出这些字词,然后服务器会返回一系列的搜索建议。
XMLHttpRequest 是 JavaScript 的对象,JavaScript 可以使用此对象直接与服务器来通信。
不同的浏览器创建 XMLHttpRequest 对象的方法是有差异的。
IE 浏览器使用 ActiveXObject,而其他的浏览器使用名为 XMLHttpRequest 的 JavaScript 内建对象。
如需针对不同的浏览器来创建此对象,我们要使用一条 "try and catch" 语句:
<html>
<head>
<script type="text/javascript">
function ajaxFunction(){
var xmlHttp;
try{
// 先判断是否是以下浏览器:Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}catch (e){
// 判断是不是 Internet Explorer 浏览器
try{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}catch (e){
try{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}catch (e){
alert("您的浏览器不支持AJAX!");
return false;
}
}
}
}
</script>
</head>
<body>
</body>
</html>
例子解释:
首先声明一个保存 XMLHttpRequest 对象的 xmlHttp 变量。
然后使用 XMLHttp=new XMLHttpRequest() 来创建此对象。这条语句针对 Firefox、Opera 以及 Safari 浏览器。假如失败,则尝试针对 Internet Explorer 6.0+ 的 xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"),假如也不成功,则尝试针对 Internet Explorer 5.5+ 的 xmlHttp=new ActiveXObject("Microsoft.XMLHTTP")。
假如这三种方法都不起作用,那么这个用户所使用的浏览器已经太过时了,他或她会看到一个声明此浏览器不支持 AJAX 的提示。
上面这些浏览器定制的代码很长,也很复杂。不过,每当您希望创建 XMLHttpRequest 对象时,这些代码就能派上用场,因此您可以在任何需要使用的时间拷贝粘贴这些代码。上面这些代码兼容所有的主流浏览器:Internet Explorer、Opera、Firefox 以及 Safari。
分享到:
相关推荐
Ajax 简介和 Ajax API Ajax 简介 Ajax 是“Asynchronous JavaScript and XML”(异步 JavaScript 和 XML)的缩写词,但事实上,Ajax 并非缩写词,而是由 Jesse James Gaiett 创造的名词。Ajax 是一种创建交互式...
**Ajax 简介** Ajax,全称为"Asynchronous JavaScript and XML",是一种在无需刷新整个网页的情况下,能够更新部分网页内容的技术。它并不是一项全新的技术,而是由一系列成熟的技术组合而成,包括JavaScript、DOM...
Ajax简介与基本使用 Ajax简介 Ajax即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。Ajax 是一种用于创建快速动态网页的技术。Ajax 是一种在无需...
主要内容有: Ajax简介以及工作原理, .net实现Ajax技术 Microsoft Ajax使用简介
**AJAX 简介** AJAX,全称为异步 JavaScript 和 XML,是2005年由Google引领的一种Web开发技术。它并不是一种全新的编程语言,而是利用现有的Web标准来构建更高效、更具交互性的网页应用。通过AJAX,开发者能够在...
在视频课程“Ajax与Atlas开发系列课程(1):AJAX简介与web2.0”中,苏鹏老师将深入浅出地讲解AJAX的基本概念、工作原理以及如何使用Atlas框架进行开发,帮助学员掌握AJAX技术在Web 2.0应用中的实践方法。通过观看该...
ajax简介,简单介绍1、什么是AJAX 2、AJAX的优势与不足 3、AJAX的关键技术
大家都知道ajax并非一种新的技术,而是几种原有技术的结合体。它由下列技术组合而成。
**WEB开发之AJAX简介** AJAX,全称为Asynchronous JavaScript and XML,即异步JavaScript和XML。这种技术允许Web开发者在不刷新整个页面的情况下,只更新网页的特定部分,从而提高了用户体验,使得网页交互更加流畅...
**Ajax 简介** Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。这种技术并非JavaScript的一种标准,而是由开发者创造的一个术语,用于描述一种利用...
本项目“用于Java应用程序的Ajax简介”就是一个使用NetBeans构建的示例项目,旨在帮助开发者快速理解和应用Ajax技术。** **在项目中,我们可能会看到以下关键组成部分:** 1. **HTML页面**:HTML文件是用户界面的...
### Ajax简介及核心技术解析 #### 一、引言 随着互联网技术的发展,用户对于Web应用的需求日益增长。从简单的信息浏览到复杂的交互式操作,Web技术也在不断进化以满足更高的用户体验标准。Ajax作为一项重要的Web...
**Ajax简介** Ajax,全称为Asynchronous JavaScript and XML(异步JavaScript和XML),是一种在无需刷新整个网页的情况下,能够更新部分网页的技术。Ajax的核心是利用JavaScript与服务器进行异步数据交换,结合DOM...
Ajax简介学习的开始Ajax简介学习的开始Ajax简介学习的开始
Ajax(Asynchronous JavaScript and XML)技术是Web开发中的一种创新,它改变了传统的浏览器与服务器之间的交互方式,使得页面能够在不重新加载整个页面的情况下与服务器交换数据并局部更新内容。Ajax的核心在于利用...
### AJAX:将交互性和直观性带入Web应用 在当今数字化时代,Web应用程序与桌面应用程序并驾齐驱,各自在不同领域展现优势。然而,两者之间的功能与用户体验存在显著差异。桌面应用程序通常安装在本地计算机上,运行...
Ajax应用背景 二、Ajax概念 三、AJAX的处理流程 四、Ajax案例 五、演示 更丰富的“用户体验”,新的交互方式
**.Net Ajax 简介** .Net Ajax 是微软为实现 Web 2.0 应用程序而提供的技术框架,主要用于构建具有高度交互性和响应性的Web应用程序。它利用Ajax(Asynchronous JavaScript and XML)的核心概念,使得用户可以在不...
**AJAX(Asynchronous JavaScript and XML)** 是一种在无需刷新整个网页的情况下,能够更新部分网页的技术。这一技术的核心在于JavaScript、XML以及浏览器提供的 XMLHttpRequest 对象。AJAX 的出现极大地提升了网页...
ajax简单技是个凡人暴风盾术及应用二房二公司的及其简单实例