一,AJAX的概念
AJAX是一种局部界面更新方式。简单的说,在B/S格式上给用户C/S的界面观感。AJAX的英文全称是Asynchronous
JavaScript and XML,(异步JavaScript和XML技术)。这里稍微解释下: 异步是指浏览器向服务器发送请求是异步的,请求发送出去后,不必等得响应便可发送下一条请求(有些多线程的意思), JS是AJAX的编程语言,异步JS是强调AJAX发送请求的方式。 XML的是指可扩展的标记语言(Extensible Markup Language),AJAX的响应返回都是XML格式的标记语言,方便在网页中操作。
这里介绍下AJAX和普通Web在刷新页面上的区别,先说普通Web,Web向服务器发送一个请求,服务器接收并处理该请求,然后响应到一个新的网页。这是一个完整的请求—响应过程。如果前后两个页面的差别不大,Web中的过程就会浪费许多宽带。网页上只需一点点变动,都要刷新整个网页,这是没有必要的。与此不同,AJAX在这方面就优化了很多,AJAX只需向服务器发送并取回必要的任务,使用XML的Web Service接口,并在客户端用JS处理响应,客户端和服务器端的数据交换大大减少,也加快了响应速度。
二,AJAX的使用方法
首先,创建XMLHttpRequest对象,XMLHttpRequest对象是AJAX的核心API,
XMLHttpRequest是浏览器内置的对象,用来发送异步请求和接收响应。
如IE的是ActiveXObject对象,火狐的是XMLHttpRequest对象,没有配置该对象的浏览器就不可以使用AJAX。
代码示例:
function getRequestObject(){
if(window.ActiveXObject){//IE浏览器
request = new ActiveXObject("Microsoft.XMLHTTP");
}else if(window.XMLHttpRequest){//火狐浏览器
request = new XMLHttpRequest();
}else {
alert("您电脑的浏览器不支持AJAX");
}
}
然后,用XMLHttpRequest对象向服务器发送请求,这个步骤中,必须绑定回调方法。 这里解释下回调方法:在AJAX机制中,发送请求,服务器接收并作出响应后,响应会自动回调到客户端。 绑定回调方法是AJAX与普通Web最大的区别所在。回调机制类似监听机制,一旦服务器做出响应,回调方法就会自动捕获该响应,并按方法进行处理。
代码示例:
function sendRequest(){//向服务器发送请求
getRequestObject();//取得XMLHttpRequest对象
//绑定回调方法(特别重要 调用回调方法不用括号)
request.onreadystatechange = processResult;
//发送请求,还可以用get方式发送
request.open("post",url,true);
//post必须添加的信息头处理
request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
request.send("Count="+Count); //发送请求中的参数
}
function processResult(){//回调方法,响应发出时自动调用该方法
if(request.readystate==4){//服务器处理完毕
if(request.status==200){//将状态做为数字返回 200为OK
//取得服务器传送的响应内容,并操作Dom组建局部更新页面
document.getElementById("msgDisplay").inner =request.responseText;
}
}
}
再接上服务器Servlet的代码,用在发送请求后,响应回调前:
public void service(HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException {
//设置响应输出的格式,此处是HTML格式的 (HTML是XML的一种)
response.setContentType("text/html;charset=gbk");
//处理缓存
response.setHeader("Cache-Control", "no-cache");
//取得客户端发送过来的参数
int count = Integer.parseInt(request.getParameter("Count"));
PrintWriter out = response.getWriter();
//发送相应给客户端 之后交由回调接方法收并处理
out.println("客户第"+count+"次发送消息,系统时间是:"+System.currentTimeMillis());
out.flush();
out.close();
}
此处只是简单介绍了AJAX在JS中的编写方法,没有详细写入HTML中网页设计。但这些JS中的方法是AJAX最根本的东西,理解本质之后才能够在网页界面和服务器的数据交换以及请求—响应的操作中熟练运用。希望这篇文章能让大家对AJAX有进一步的了解。
分享到:
相关推荐
在本篇“AJAX学习总结(一)--基于jQuery第一个实例”中,我们将探讨如何使用jQuery库实现异步JavaScript和XML(AJAX)技术。AJAX允许我们在不刷新整个页面的情况下,更新网页的部分内容,从而提供更流畅的用户体验...
Asp.net+Ajax学习总结.xls,Asp.net+Ajax学习总结.xls
在“AJAX学习总结(四)---解决缓存问题”这篇博文中,作者LC2586详细讲解了这些方法,并可能通过实例展示了如何在代码中应用它们。通过阅读和实践,你可以更深入地掌握AJAX缓存管理技巧,提升你的Web应用质量。
在本篇“AJAX学习总结(七)---实现可编辑的表格”中,我们将探讨如何利用AJAX技术来创建一个动态、交互式的表格,让用户能够直接在页面上编辑数据,无需刷新整个页面。AJAX(Asynchronous JavaScript and XML)是一...
在本篇“AJAX学习总结(六)---可收缩展开的级联菜单和局部刷新”中,我们将深入探讨如何利用AJAX技术实现交互性更强的Web应用,特别是针对级联菜单和页面局部刷新这两个功能。AJAX(Asynchronous JavaScript and ...
在本篇博客"AJAX学习总结(五)---窗口的淡入淡出和css学习"中,作者主要探讨了如何利用AJAX技术实现网页元素的动态更新,以及结合jQuery库来实现窗口的淡入淡出效果。同时,还涉及了一些CSS的基础知识。以下是关于...
### Ajax学习总结 #### 一、Ajax概述 Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步...
在本篇博客"AJAX学习总结(三)--jQuery处理xml数据"中,我们将深入探讨如何使用jQuery库来处理XML格式的数据。XML(eXtensible Markup Language)是一种用于存储和传输数据的标准格式,尤其在Web应用程序中广泛使用...
**AJAX学习总结(二)--XMLHttpRequest实例** 在Web开发中,AJAX(Asynchronous JavaScript and XML)技术被广泛用于实现页面的无刷新更新,提高用户体验。本篇将聚焦于XMLHttpRequest对象,它是AJAX的核心,负责在...
在本篇“AJAX学习总结(八)---Jquery实例:动态股票价格”中,我们将深入探讨如何使用jQuery库来实现AJAX技术,以便实时更新网页上的股票价格信息。AJAX,即异步JavaScript和XML,是一种在无需刷新整个页面的情况下...
在本篇博客“AJAX学习总结(九)---Jquery实例:仿googlesuggest自动补全功能”中,作者分享了如何使用jQuery实现一个类似Google Suggest的自动补全功能,这是一种常见的前端交互设计,广泛应用于搜索框输入时提供...
### Ajax学习笔记个人总结 #### 一、XMLHttpRequest对象简介 **XMLHttpRequest** 对象是 AJAX 技术的核心,它负责在客户端与服务器之间发送异步请求,无需刷新整个页面即可实现局部数据更新。要使用 ...
AJAX技术学习总结分享.pdf 一、Ajax技术原理总结 Ajax技术是一种创建交互式网页应用的网页开发技术,也是一种用于创建快速动态网页的技术。它通过在后台与服务器进行少量数据交换,AJAX可以使网页实现异步更新。...
**Ajax学习——DWR的参考书和实用案例学习总结** DWR(Direct Web Remoting)是一种优秀的开源框架,专门用于简化Web应用程序中的Ajax(Asynchronous JavaScript and XML)开发。Ajax技术允许网页在不刷新整个页面...
【Ajax学习资料总结】 Ajax,即异步JavaScript和XML,是一种在2005年由Google推广的编程模式,用于创建更高效、响应更快的Web应用程序。它不是一种新的编程语言,而是利用现有Web标准(如JavaScript和XML)的新技术...
Ajax技术学习总结.pdf
总结,Ajax是Web开发中不可或缺的一部分,它提高了网页的交互性和用户体验。通过深入学习Ajax,开发者能更好地构建动态、高效的Web应用程序。本套教程将覆盖以上所有知识点,并通过实例教学,确保学习者能够熟练运用...
总结来说,`web.xml`配置文件与Ajax技术虽然看似不直接相关,但它们都是构建动态Web应用的关键组件。前者定义了服务器端的逻辑和行为,后者则优化了用户体验,实现了无需刷新页面即可更新内容的能力。理解并掌握这...