XMLHttpRequest对象如何兼容各浏览器使用?

什么是 XMLHttpRequest 对象? XMLHttpRequest 对象用于在后台与服务器交换数据。 XMLHttpRequest 对象是开发者的梦想,因为您能够: 在不重新加载页面的情况下更新网页 在页面已加载后从服务器请求数据 在页面已加载后从服务器接收数据 在后台向服务器发送数据 所有现代的浏览器都支持 XMLHttpRequest 对象。

1、如何创建兼容良好的XMLHttpRequest 对象:

function createXmlRequest(){ 
    var xmlHttp;
	try{ 
        xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); 
    }catch(e){ 
        xmlHttp=new ActiveXObjec("Microsoft.XMLHTTP"); // 老版本的 Internet Explorer (IE5 和 IE6)
    }if(!xmlHttp && typeof XMLHttpRequest!='undefined'){ 
        try{ 
            xmlHttp=new XMLHttpRequest(); 
        }catch(e){ 
            xmlHttp=false; 
        } 
    }
    return xmlHttp;
}

2、如何使用?以Struts为例:

var xhr = createXmlRequest();
var url = "checkImsiJt.do?startid="+startid+"&endid="+endid;
xhr.open("GET",url,true);
xhr.onreadystatechange = function(){
    if (xhr.readyState == 4 && xhr.status == 200) {
        var msg = xhr.responseText;
        // TOOD 响应后台输出结果
    }
};
xhr.send(null);

 Struts的处理请求:

// 后台输出:
String result = "xxxx";
response.setContentType("text/html;charset=GBK");
response.getWriter().write(result);

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏腾讯云数据库(TencentDB)

腾讯云数据库回档解决方案

作者介绍:李明,腾讯云数据库架构师华南区负责人,曾在某专业数据库服务商、51job任职DBA。

1.6K2
来自专栏葡萄城控件技术团队

Asp.Net MVC4入门指南(7):给电影表和模型添加新字段

在本节中,您将使用Entity Framework Code First来实现模型类上的操作。从而使得这些操作和变更,可以应用到数据库中。 默认情况下,就像您在...

19810
来自专栏游戏杂谈

HTML5的Geolocation API

Geolocation API用于将用户当前地理位置信息共享给信任的站点,这涉及用户的隐私安全问题,所以当一个站点需要获取用户的当前地理位置,浏览器会提示用户是...

1342
来自专栏lgp20151222

重新设置Eclipse的workspace路径

1. 启动Eclipse/MyEclipse后, 打开"Window -> Preferences -> General -> Startup and Shut...

1304
来自专栏北京马哥教育

超详细!使用 LVS 实现负载均衡原理及安装配置详解

负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群。常用的负载均衡开源软件有nginx、lvs、haproxy,商业的硬件负载均衡...

47010
来自专栏大魏分享(微信公众号:david-share)

讲真,Ansible 可以管理Windows?

前言: 本文是我和李尧老师一起实验。李尧是红帽高级培训讲师,目前负责红帽中国区员工内部技术培训与认证。 一、Ansible能对windows做什么操作? Ans...

7885
来自专栏一个默默无闻的工程师的日常

RDO安装openstack遇到的一些问题(swift & mongodb)

1272
来自专栏Python、Flask、Django

骚气的置顶

1395
来自专栏智能计算时代

Envoy架构概览(9):访问日志,MongoDB,DynamoDB,Redis

访问日志 HTTP连接管理器和tcp代理支持具有以下功能的可扩展访问日志记录: 每个连接管理器或tcp代理的任意数量的访问日志。 异步IO刷新架构。 访问日志记...

3953
来自专栏以南小隐-数通那些事儿

EVE-NG-PRO导入IOL镜像《EVE-NG系列教程三》

5.7K2

扫码关注云+社区

领取腾讯云代金券