基本步骤:
1、创建一个XMLHttpRequest对象实例;
2、指定XMLHttpRequest对象状态的改变的处理函数;
3、指定请求的属性。XMLHttpRequest对象的open()方法会指定将发出的请求,open()方法取3个参数:一个是
指示所用方法(通常是GET或POST)的串;一个是目标资源URL的串;一个是Boolean值,指示请求是否是异步的
。
4、将请求发送给服务器。使用XMLHttpRequest对象的send()方法。当向send()方法提供参数时,要确保
open()中指定的方法是POST。如果没有数据作为请求的一部分被发送,则使用null。
mySample1.html
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>使用XMLHttpRequest对象发送简单请求</title>
<script language=javascript>
var xmlHttp;
///创建一个XMLHttpRequest对象实例
function createXMLHttpRequest(){
if (window.ActiveXObject)
{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest){
xmlHttp = new XMLHttpRequest();
}
}
function startRequest()
{
///1、创建一个XMLHttpRequest对象实例
createXMLHttpRequest();
///2、指定XMLHttpRequest对象状态的改变的处理函数(回调函数)
xmlHttp.onreadystatechange = handleStateChange;
///3、指定请求的属性
xmlHttp.open("GET","mySample1.xml",true);
///4、将请求发送给服务器
xmlHttp.send(null);
}
///XMLHttpRequest对象状态的改变的处理函数(回调函数)
function handleStateChange()
{
///请求的状态,有5个值:0=未初始化,1=正在加载,2=已加载,3=交互中,4=完成
if (xmlHttp.readyState == 4)
{
///服务器的HTTP状态码,200=OK,404=NotFound ...
if (xmlHttp.status == 200)
{
alert("服务器响应: " + xmlHttp.responseText);
}
}
}
</script>
</head>
<body>
<form action="#">
<input type =button value="开始使用XMLHttpRequest对象发送简单请求" onclick ="startRequest();"/>
</form>
</body>
</html>
mySample1.xml:
<?xml version="1.0" encoding="GB2312" ?>
<config>
<setting name="WebServiceURL">http://192.168.2.28/GZPWeb/GetData.asmx</setting>
<setting name="WebserviceNamespace">GZPWeb</setting>
<setting name="WebServiceClassName">GZPWeb</setting>
<setting name="WebServiceMethodName">Query</setting>
<setting name="DBConnectString">SERVER=localhost;USER ID=pms;PASSWORD=pms;Initial Catalog=PMS;Connection Lifetime=5;Pooling=true;Min Pool Size=2</setting>
</config>
运行结果如下:
有关XMLHttpRequest对象参考请见
http://www.xmlhttp.cn/manual/xmlhttprequest.html