详解原生AJAX请求demo(兼容IE5/6)

本文介绍了一种在不同浏览器中创建XMLHttpRequest (XHR) 对象的方法,包括对IE5/6的支持。详细解释了如何使用open()和send()方法发起GET和POST请求,以及如何监听readyState变化来处理响应。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

function createXHR(){
// 检测原生XHR对象是否存在
	if ( window.XMLHpptRequest ){
	// 如果存在就返回新实例
		return new XMLHpptRequest();
	} else { // 如果不存在就检测ActiveX对象
		// 兼容IE5/6
		return new ActiveXObject('Microsoft.XMLHttp');
	}
}

// 在所有的浏览器中创建XHR对象
var xhr = new createXHR();

xhr.onReadyStateChange = function(){
	// readyState表示请求/响应过程的当前活动阶段。4表示完成,0-3不用关心。
	if (xhr.readyState == 4) {
		// status为状态码,是响应的HTTP状态,200到300之间或304都表示响应已经成功返回
		if( ( (xhr.status >= 200 && xhr.status <= 300) || xhr.status == 304 ) {
			// responseText作为响应主体被返回的文本
			console.log(xhr.responseText);
		} else {
			// ...
		}
}

// open()方法是启动一个请求以备发送
// open接收3个参数:请求类型、请求的url,是否异步发送请求的布尔值(可选,true为异步)
xhr.open("GET", url, true);
// send()发送特定的请求,接收一个参数,作为请求主题发送的数据。
xhr.send();

xhr.open("POST", url, false);
xhr.send(data);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值