ajax XmlhttpRequest 对象 创建XMLhttpRequest 对象 IE 中实现为activeX脚本 其他浏览器作为javascript 的内置对象 实现方式不同,提供的借口相同
原生代码: function getHttpRequest{ var xhl=false; if(window.XMLHttpRequest) { xhl=new XMLHttpRequest(); } else if(window.ActiveXObject){ xhl=new ActiveXObject("Microsoft.XMLHTTP");
} return xhr; }
XMLHttpRequest 的方法 open("method","url"); 确定发送的方式和目标 send(content); 发送信息 setRequestHeader("header","value"); 指定首部的值(之前必须调用open方法),post请求时设置一个header abort()停止当前请求 getAllResponseHeaders()返回请求的所有响应的键值对 getAllResponseHeader("header")返回指定首部值 属性: onreadystatechange 每个状态的改变都会触发这个事件,通常会调用一个javascript函数 readyState 请求的状态(0未初始化,1正在加载,2已加载,3交互中,4完成) responseText 服务器的响应,返回一个字符串,表示为xml,可以解析为dom对象 status 服务器的Http状态(200 Ok,404对应未找到资源,500等表示服务器错误) statusText HTTP状态码相应的文本
原生的ajax处理 window.onload=function() { document.getElementsByTagName("a")[0].onclick=function() { var req=new XMLHttpRequest(); var url=this.href; var method="GET"; req.open(method,url); req.send(null); req.onreadystatechange=function(){ if(req.readyState==4) { req.status==200||req.status==304) alert(req.req.responseText); } } return false; } }
open(method,url,asynch)method:请求的方式 :get,posturl:请求的目的asynch:是否异步传输默认为true(一般不使用) (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|