原生ajax 与jquery ajax 的对比
第一种:原生js 的ajax请求
XMLHttpRequest,不得不提的一个对象,AJAX最核心也是最底层的对象。可悲哀的是,它是W3C的一个标准,但微软IE一直很自我(微软IE)。怎么办?当然是用一个方法和谐掉它们。
【原生ajax 与jquery ajax 的对比】
//异步检测
var XMLHttpReq;
//创建XMLHttpRequest对象
function createXMLHttpRequest() {
if(window.XMLHttpRequest) { //Mozilla 浏览器
XMLHttpReq = new XMLHttpRequest();
}
else if (window.ActiveXObject) { // IE浏览器
try {
XMLHttpReq = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
XMLHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
}
这样就拿到了XMLHttpRequest对象。
下面是处理响应的函数:
function checkXMLEmailResponse(){
if (XMLHttpReq.readyState == 4) { // 判断对象状态
if (XMLHttpReq.status == 200) { // 信息已经成功返回,开始处理信息
var resXML = XMLHttpReq.responseText;
//这里写代码} else { //页面不正常
window.alert("您所请求的页面有异常。");
}} }
好了,xhr对象有了,处理响应的函数也有了,那怎么调用呢。
createXMLHttpRequest();
//初始化xhr
XMLHttpReq.open('GET','/demo/ajax/iajax20110306_query.php?entryname='+val,true);
//与readyState属性有关,当readyState改变时它才会触发
XMLHttpReq.onreadystatechange=checkXMLEmailResponse;
//这里设置响应的函数
//异步处理完成后发送数据出去(比如某些需要在焦点事件后再执行的)
XMLHttpReq.send(null);
第二种:jquery 封装的ajax方法
$.ajax( {
url : url,
type : 'get',
success : function(data) {
//data为返回数据}
是不是很简单呢。那我们以后就快乐得用jquery吧。
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- Docker应用:容器间通信与Mariadb数据库主从复制
- 《真与假的困惑》???|《真与假的困惑》??? ——致良知是一种伟大的力量
- 第326天
- Shell-Bash变量与运算符
- 逻辑回归的理解与python示例
- Guava|Guava RateLimiter与限流算法
- 我和你之前距离
- CGI,FastCGI,PHP-CGI与PHP-FPM
- NeuVector 会是下一个爆款云原生安全神器吗()