AJAX
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了AJAX,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2870字,纯文字阅读大概需要5分钟。
内容图文
![AJAX](/upload/InfoBanner/zyjiaocheng/1332/a656daf0d47f4c9193303f7bad01397d.jpg)
1 XmlHttp是什么? 2 最通用的定义为:XmlHttp是一套可以在Javascript、VbScript、Jscript等脚本语言中通过http协议传送或从接收XML及其他数据的一套API。XmlHttp最大的用处是可以更新网页的部分内容而不需要刷新整个页面。 3 来自MSDN的解释:XmlHttp提供客户端同http服务器通讯的协议。客户端可以通过XmlHttp对象(MSXML2.XMLHTTP.3.0)向http服务器发送请求并使用微软XML文档对象模型Microsoft? XML Document Object Model (DOM)处理回应。 4 5 现在的绝对多数浏览器都增加了对XmlHttp的支持,IE中使用ActiveXObject方式创建XmlHttp对象,其他浏览器如:Firefox、Opera等通过window.XMLHttpRequest来创建xmlhttp对象。 6 7 XmlHttp对象参考: 8 属性: 9 onreadystatechange* 指定当readyState属性改变时的事件处理句柄。只写 10 readyState 返回当前请求的状态,只读. 11 responseBody 将回应信息正文以unsigned byte数组形式返回.只读 12 responseStream 以Ado Stream对象的形式返回响应信息。只读 13 responseText 将响应信息作为字符串返回.只读 14 responseXML 将响应信息格式化为Xml Document对象并返回,只读 15 status 返回当前请求的http状态码.只读 16 statusText 返回当前请求的响应行状态,只读 17 18 方法: 19 abort 取消当前请求 20 getAllResponseHeaders 获取响应的所有http头 21 getResponseHeader 从响应信息中获取指定的http头 22 open 创建一个新的http请求,并指定此请求的方法、URL以及验证信息(用户名/密码) 23 send 发送请求到http服务器并接收回应 24 setRequestHeader 单独指定请求的某个http头
AJAX学习
1.创建对象 variable=new XMLHttpRequest() 新版本
variable=new ActiveXObject("Microsoft.XMLHTTP");老版本
2.请求 XMLHTTP.open("GET/POST","url文件在服务器上的位置","true同步/false异步")
XMLHTTP.send()
POST的使用
无法使用缓存文件(更新服务器上的文件或数据库)
向服务器发送大量数据(POST 没有数据量限制)
发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠
3.响应
responseText 获得字符串形式的响应数据
responseXML 获得 XML 形式的响应数据
4.readyState
readyState
存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。
0: 请求未初始化
1: 服务器连接已建立
2: 请求已接收
3: 请求处理中
4: 请求已完成,且响应已就绪
status
200: "OK"
404: 未找到页面
AJAX实例
1 <script> 2function loadXMLDoc() 3{ 4var xmlhttp; 5if (window.XMLHttpRequest) 6 { 7// IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码 8 xmlhttp=new XMLHttpRequest(); 9 } 10else11 { 12// IE6, IE5 浏览器执行代码13 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 14 } 15 xmlhttp.onreadystatechange=function() 16 { 17if (xmlhttp.readyState==4 && xmlhttp.status==200) 18 { 19 document.getElementById("myDiv").innerHTML=xmlhttp.responseText; 20 }else{
} 21 } 22 xmlhttp.open("GET","/try/ajax/ajax_info.txt",true); 23 xmlhttp.send(); 24} 25 </script>
AJAX封装
1 function ajax(options){ 2 var xhr = null; 3var params = formsParams(options.data); 4if(window.XMLHttpRequest){ 5 xhr = new XMLHttpRequest() 6 } else { 7 xhr = new ActiveXObject("Microsoft.XMLHTTP"); 8 } 9if(options.type == "GET"){ 10 xhr.open(options.type,options.url + "?"+ params,options.async); 11 xhr.send(null) 12 } elseif(options.type == "POST"){ 13 xhr.open(options.type,options.url,options.async); 14 xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 15 xhr.send(params); 16 } 17 xhr.onreadystatechange = function(){ 18if(xmlhttp.readyState==4){ 19if(xmlhttp.status==200||xmlhttp.status==304){ 20 options.success(xhr.responseText); 21 } 22 } 23 } 24} 25function formsParams(data){ 26var arr = []; 27for(var prop in data){ 28 arr.push(prop + "=" + data[prop]); 29 } 30return arr.join("&"); 31 }
原文:https://www.cnblogs.com/wxy0715/p/12441876.html
内容总结
以上是互联网集市为您收集整理的AJAX全部内容,希望文章能够帮你解决AJAX所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。
来源:【匿名】