标签:des http io os ar 使用 for strong sp
1.创建XMLHttpRequest 对象:
1.XMLHttpRequest 用于在后台与服务器交换数据
2.向服务器发送请求
1.xmlhttp.open("GET","test1.txt",true);
open(method,url,async)
2.xmlhttp.send(string);
string:仅用于 POST 请求
与 POST 相比,GET 更简单也更快,并且在大部分情况下都能用。
然而,在以下情况中,请使用 POST 请求:
1GET为了避免get得到缓存结果向 URL 添加一个唯一的 ID:
xmlhttp.open("GET","demo_get.asp?t=" +Math.random()
,true); xmlhttp.send();
2通过 GET 方法发送信息,请向 URL 添加信息:
xmlhttp.open("GET","demo_get2.asp?fname=Bill&lname=Gates",true); xmlhttp.send();
2POST 如果需要像 HTML 表单那样 POST 数据,请使用 setRequestHeader() 来添加 HTTP 头。然后在 send() 方法中规定您希望发送的数据:
xmlhttp.open("POST","ajax_test.asp",true); xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded"); xmlhttp.send("fname=Bill&lname=Gates");
setRequestHeader(header,value) 向请求添加 HTTP 头。
3 url - 服务器上的文件
open() 方法的 url 参数是服务器上文件的地址:
该文件可以是任何类型的文件,比如 .txt 和 .xml,或者服务器脚本文件,比如 .asp 和 .php (在传回响应之前,能够在服务器上执行任务)
4 Async = false
5.服务器的响应
使用 XMLHttpRequest 对象的 responseText 或 responseXML 属性获得来自服务器的响应
responseText 属性:来自服务器的响应并非 XML,请使用 responseText 属性
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
responseXML 属性:作为 XML 对象进行解析,请使用 responseXML 属性
请求 books.xml 文件,并解析响应:
xmlDoc=xmlhttp.responseXML; txt=""; x=xmlDoc.getElementsByTagName("ARTIST"); for (i=0;i<x.length;i++) { txt=txt + x[i].childNodes[0].nodeValue + "<br />"; } document.getElementById("myDiv").innerHTML=txt;
6 onreadystatechange 事件
当请求被发送到服务器时,我们需要执行一些基于响应的任务。每当 readyState 改变时,就会触发 onreadystatechange 事件。
readyState 属性存有 XMLHttpRequest 的状态信息。
xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("myDiv").innerHTML=xmlhttp.responseText; } }
onreadystatechange 事件被触发 5 次(0 - 4),对应着 readyState 的每个变化。
7 callback 函数是一种以参数形式传递给另一个函数的函数。
如果您的网站上存在多个 AJAX 任务,那么您应该为创建 XMLHttpRequest 对象编写一个标准的函数,并为每个 AJAX 任务调用该函数。
函数a有一个参数,这个参数是个函数b,当函数a执行完以后执行函数b。那么这个过程就叫回调。
function myFunction() { loadXMLDoc("ajax_info.txt",function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("myDiv").innerHTML=xmlhttp.responseText; } }); }
标签:des http io os ar 使用 for strong sp
原文地址:http://www.cnblogs.com/hengqianduan/p/4052459.html