AJAX 是什么:
AJAX = 异步 JavaScript 和 XML;
AJAX 是一种在无需加载整个网页的情况下,能够更新部分网页的技术;
AJAX 是一种在2005年由Google 推广开来的变成模式;
AJAX 不是一种新的变成语言,而是一种使用现有新标准的方法,通过AJAX可以创建更好、更快以及
更友好的WEB 应用程序;
AJAX 基于JavaScript 和 HTTP 请求(HTTP request),通过后台与服务器进行少量
数据交换,AJAX可以使用网页实现异步更新,\局部更新;
重要的对象:XMLHttpRequest 对象 ,所有现代浏览器支持的对象:IE7+ Firefox/Chrome/Safari
创建语法:
var xmlhttprequest = new XMLHttpRequest();
IE6 以下版本使用 :ActiveXObject对象;
var xmlhttprequest = new ActiveXObject("Microsoft.XMLHTTP");
提示:当请求被发送到服务器时,我们需要执行一些基于响应的任务。
每当readyState改变时,就会触发onreadystatechange事件。
readyState属性存有XMLHttpRequest的状态信息;
XMLHttpRequest 对象的属性介绍:
onreadystatechange(当准备好的状态发生改变的时候):
存储函数(函数名),每当readyState属性改变时,就会调用函数;
readyState(准备好的状况):
存有XMLHttpRequest 的状态,从0 到4 发生变化,
0:请求未初始化;
1:服务器连接已建立;
2:请求已接收;
3:请求处理完成;
4:请求已完成,且响应已就绪;
status(状态):
200 :“OK”
404: 未找到页面;
AJAX 缺点介绍:
不能只说好处而不说坏处,没有完美的编程语言:
1、前进后退按钮失效
2、性能问题;
3、安全问题;
4、开发难点问题;
读取XML文件时的数据源:book.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<books>
<book>
<title>JAVA</title>
<price>200</price>
</book>
<book>
<title>C#</title>
<title>八嘎</title>
<title>dd</title>
<price>300</price>
</book>
<book>
<title>.net</title>
<price>3.0</price>
</book>
<book>
<price>3.0</price>
</book>
</books>
使用介绍如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script type="text/javascript">
var xmlhttp;
//测试IE内核版本
function getIE()
{
// IE 6.0 以上及其它浏览器
if(window.XMLHttpRequest){
xmlhttp = new XMLHttpRequest();
}else{//6.0 以下的版本:IE 6 / IE 5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
//执行操作
function getChange(obj)
{
//获取正确的版本运行环境
getIE();
// 访问地址
var url ="${pageContext.request.contextPath}/user_show.action?username="+obj.value;
//编码转换
var myurl = encodeURI(url);
//打开:参数 : 提交方式 地址 是否异步提交
/*
Method: 请求类型,get/post
url:文件在服务器上的位置
Async: true 异步,false 同步
post 比 get 更加稳定可靠;
post 没有数据量的限制
*/
xmlhttp.open("post",myurl, true);
//准备好了是否回调,此处回调方法不能增加括号
xmlhttp.onreadystatechange = getBack;
//将请求发送到服务器 : string 仅用于post请求;
xmlhttp.send();
}
//方法的回调
function getBack()
{
//xmlhttp.readyState 请求已完成,响应已就绪
//xmlhttp.status==200 状态OK
if(xmlhttp.readyState == 4 && xmlhttp.status==200){
/*
获取服务器的响应:使用XMLHttpRequest对象的:
responseText : 获取字符串形式的响应数据
responseXML : 获取xml形式的响应数据
*/
document.getElementById("xx").innerHTML = xmlhttp.responseText;
}
}
// 获取xml 文件,并读取数据
function getXML()
{
getIE();
var url = "${pageContext.request.contextPath}/book/book.xml";
xmlhttp.open("post", url,true);
xmlhttp.onreadystatechange = getBack2;
xmlhttp.send();
}
//回调处理XML 中的数据
function getBack2()
{
if(xmlhttp.readyState==4 && xmlhttp.status){
var t = xmlhttp.responseXML;
//此处获取到的是一个集合
var x = t.getElementsByTagName("title");
var y = t.getElementsByTagName("price");
alert(" "+x[2].childNodes[0].nodeValue+" "+y.length);
var txt = "";
for(i=0;i<x.length;i++){
txt = txt+x[i].childNodes[0].nodeValue+" "+y[i].childNodes[0].nodeValue+"</br>";
}
document.getElementById("xx").innerHTML= txt;
}
}
</script>
</head>
<body>
请输入您情人的名字:<input type="text" onblur="getXML();">
<div id="xx"></div>
</body>
</html>
-->
分享到:
相关推荐
Ajax基础培训_ppt,保证看完之后,你会对Ajax有了新的认识。
可以很好的认识这方面的内容与大家交流与发展
我做ajax的讲座的ppt,有兴趣的...谈了对web应用的重新认识,web的特点,用户的需求,互联网web应用的趋势,ajax在web中的应用,什么是ajax,ajax的知识结构,ajax的核心XHR实现异步,ajax的框架,ajax的未来,air技术
Ajax的技术的产生 Ajax被认为是(Asynchronous JavaScript and XML的缩写)。现在,允许浏览器与服务器通信而无须刷新当前...而Ajax这项技术,是Google在Google Labs发布Google Maps和Google Suggest后真正为人所认识。
本资源主要是为了初学者对Ajax有一个认识,和一些基础知识的教学。
大数据入门认识大数据1.1 Web 2.0造就大数据(Ajax)1.2单服务器时代1.3数据的价值企业成长模式以及数据分析的重要性技术 + 分析 + 售前大数据
《Ajax开发简略》发布之后,参考朋友和网友的意见,开始整理撰写《Ajax开发详解》,试图将自己所理解的...了解B/S请求响应机制以及响应的Web开发模式将有助于理解Ajax在Web系统中所处的位置,更好的认识Ajax的作用。
程序描述:本章将介绍 GWT应用中高级应用的部分,包括各中组件和布局、如何发送XMLHttpRequest请求,以及如何解决浏览器历史记录问题等等,同时读者还将详细的了解RPC应用的开发过程。 /xmlsample/AjaxSample....
Ajax入门与提高(ppt)·····从基础的学习到实践!全面认识ajax
对ajax有一个基本的认识,能用会用够用,需要有一定的计算机基础
1.认识jQuery 2.jQuery选择器 3.jQuery中的DOM操作 4.jQuery中的事件和动画 5.jQuery对表单、表格的操作及更多应用 6.jQuery与Ajax的应用 7.jQuery插件的使用和写法 8.用jQuery打造个性网站 9.jQuery Mobile 10....
《跟我学Java Web》内容包括搭建Web开发环境、HTML相关技术基础知识、...基础知识、Struts2技术详解(拦截器、输入校验、国际化、Struts2的各种标签、对Ajax的支持等)、Spring2.5(容器、装配Java Bean、JDBC和...
《跟我学Java Web》内容包括搭建Web开发环境、HTML相关技术基础知识、...基础知识、Struts2技术详解(拦截器、输入校验、国际化、Struts2的各种标签、对Ajax的支持等)、Spring2.5(容器、装配Java Bean、JDBC和...
第1章认识 ASP.NET 3.5 第2章 C# 3.0 程序设计基础 第3章 面向对象设计基础 第4章 ASP.NET 的网页代码模型及生命周期 第二篇 ASP.NET窗体控件 第5章 Web 窗体的基本控件 第6章 Web 窗体的高级控件 第三篇 数据操作篇...
《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》介绍了Web开发中客户端技术的基础知识,包括JavaScript、CSS、AJAX等,这些技术都是Web应用中常用的客户端技术。 《Java Web开发技术大全:JSP+...
大数据入门认识大数据1.1 Web 2.0造就大数据(Ajax)1.2单服务器时代1.3数据的价值企业成长模式以及数据分析的重要性技术 + 分析 + 售前大数据
《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》介绍了Web开发中客户端技术的基础知识,包括JavaScript、CSS、AJAX等,这些技术都是Web应用中常用的客户端技术。 《Java Web开发技术大全:JSP+...
第1 章认识ASP.NET 3.5 第2 章C# 3.0 程序设计基础 第3 章面向对象设计基础 第4 章ASP.NET 的网页代码模型及生命周期 第二篇ASP.NET窗体控件 第5 章Web 窗体的基本控件 第6 章Web 窗体的高级控件 第三篇数据操作篇 ...
第14章 ASP.NET AJAX相关技术简介 14.1 Ajax概述 14.1.1 什么是Ajax 14.1.2 Ajax的工作原理 14.1.3 Ajax的优势与不足 14.2 ASP.NET AJAX 14.2.1 ASENET AJAX的特性 14.2.2 ASENET AJAX的安装 14.3 ASENET ...