加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

AJAX

发布时间:2020-12-15 21:07:30 所属栏目:百科 来源:网络整理
导读:AJAX的概念: AJAX即“ A synchronous J avascript A nd X ML ”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。 AJAX = 异步JavaScript和XML(标准通用标记语言的子集)。 AJAX 是一种用于创建快速动态网页的技术。 AJAX 是一种在无需

AJAX的概念:

AJAX即“AsynchronousJavascriptAndXML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。
AJAX = 异步JavaScript和XML(标准通用标记语言的子集)。
AJAX 是一种用于创建快速动态网页的技术。
AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。[1]
通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
传统的网页(不使用 AJAX)如果需要更新内容,必须重载整个网页页面。

AJAX使用的是老的技术,新的思想.完成了RIA的应用:Rich Internet Application.

* 传统方式的开发:所有的数据提交到服务器端进行处理.(胖服务器)

* AJAX的方式开发:有一部分的代码写在客户端.

同步:

异步:


AJAX的作用:

完成页面局部刷新而不影响用户的体验.

* 用户名是否已经存在的校验

* 百度信息输入的提示

...

使用AJAX:

JavaScript和XML

* XMLHttpRequest:

* 属性:

* onreadystatechange:

* readyState:

0(未初始化) 对象已建立,但是尚未初始化(尚未调用open方法)

1(初始化) 对象已建立,尚未调用send方法

2(发送数据) send方法已调用,但是当前的状态及http头未知

3(数据传送中) 已接收部分数据,因为相应及http头不全,这时通过responseBody和responseText获取部分数据会出现错误。

4(完成) 数据接收完毕,此时可以通过responseBody和reponseText获取完整的回应数据


* status:获得状态码

* responseText:响应的文本

* responseXML:响应的XML

* 方法:

* open(请求方式,请求路径,是否异步);

* send(提交的参数);

* setRequestHeader(头信息,头的值);

setRequestHeader("content-type","form表单enctype属性"):设置post请求的参数的类型 必须放在send方法之前.

例如:

                //open
		xmlhttp.open("post","URL");
		//设置请求头
		xmlhttp.setRequestHeader("content-type","application/x-www-form-urlencoded");
		//send
		xmlhttp.send("username=张三");



开发步骤:

1.获得XMLHttpRequest对象.

* IE将XMLHttpRequest封装到一个ObjectXActive插件中.

* Firefox直接可以创建XMLHttpRequest.

2.设置状态改变触发一个函数.

3.打开一个链接.

4.发送请求.


AJAXGET入门】:

创建XMLHttpRequest
function createXMLHttpRequest() {
	var xmlHttp;
	try { // Firefox,Opera 8.0+,Safari
		xmlHttp = new XMLHttpRequest();
	} catch (e) {
		try {// Internet Explorer
			xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {
			}
		}
	}

	return xmlHttp;
}

AJAX的代码:
function loadData() {
	// 1.创建异步XMLHttpRequest对象
	var xhr = createXMLHttpRequest();
	// 2.设置状态改变触发一个函数
	xhr.onreadystatechange = function(){
		// 回调函数.
		if(xhr.readyState == 4){// 请求发送完成
			if(xhr.status == 200){// 响应也正确
				var data = xhr.responseText;
				document.getElementById("d1").innerHTML=data;
			}
		}
	}
	// 3.打开一个连接:
	xhr.open("GET","/WEB15/ServletDemo1",true);

	// 4.发送请求
	xhr.send(null);
}

【AJAX的POST入门】:

function loadData(){
	// 1.创建异步对象
	var xhr = createXMLHttpRequest();
	// 2.设置状态改变触发的函数
	xhr.onreadystatechange = function(){
		if(xhr.readyState == 4){
			if(xhr.status == 200){
				document.getElementById("d1").innerHTML=xhr.responseText;
			}
		}
	}
	// 3.打开连接
	xhr.open("POST","/WEB15/ServletDemo2",true);
	xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	// 4.发送数据
	xhr.send("name=李四&password=456");
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读