Ajax原理-原生js的XMLHttpRequest对象意义
今天你在哪一步? Ajax技术: 浏览器与服务器之间进行异步交互无需刷新页面的技术:
现在所有有浏览器都支持XMLHttpRequest对象(ie5和ie6使用ActiveXObject)。XMLHttpRequest用于在后台与服务器交换数据。这意味着可以在不加载整个网页的情况下对网页某部分进行更新。 1:创建XMLHttpRequest对象的语法: Var variable = new XMLHttpRequest(); 老版本的internet Explorer使用ActiveX对象: Var variable = new ActiveXObject(“Microsoft.XMLHTTP”); 因此处理兼容性: Var xmlhttp; If(window.XMLHttpRequest){ Xmlhttp = new XMLHttpRequest(); }else{ Xmlhttp = new ActiveXobject(“Microsoft.XMLHTTP”); } 2:向服务器发送请求(这是常识,第二步操作) 如需发送请求,就是用XMLHttpRequest对象的open()和send()方法: xmlHttp.open(“GET”,”test1.txt”,true); xmlHttp.send(): 2.1open方法讲解: Open(method,url,async) 规定请求类型、url以及是否异步处理请求,async中true(异步),false(同步) Send(string) : 请求发送到服务器,如果含有参数string那么仅仅用于POST请求 2.2GET和POST区别 Get更简单,更快,大部分情况都能使用 然而在以下情况下POST请求: 01:无法使用缓存文件(更新服务器上的文件或数据库) 02:向服务器发送大量数据 03:发送包含未知字符的用户输入,post更可靠。 2.3get请求 Xmlhttp.open(“GET”,”bangbang.php”,true); Xmlhttp.send(); 例如: Xmlhttp.open(“GET”,”bangbang.php?sex=man&age=22,true); Xmlhttp.send(); 2.4POST请求 Xmlhttp.open(“POST”,true); Xmlhttp.send(); 如果需要向html表单那样POST数据,请使用setRequestHeader()来添加HTTP头部,然后send()方法规定您希望发送的数据: Xmlhttp.open(“POST”,true); xmlhttp.setRequestHeader(“Content-type”,“application/x-www-form-urlencoded”); Xmlhttp.send(“sex=man&age=22”); 其中:setRequestHeader(header,value)向请求添加http头, header:规定头部名称 Value:规定头的值; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |