通过xmlHttp和ASP的结合,我们可以轻松完成网页的异步调用。
代码如下:
1.新建Display.asp(这是前台显示页面)
注意xmlhttp.readyState的4个属性
1:LOADING;2:LOADED;3:INTERACTIVE;4:COMPLETED
使用XmlHttp结合ASP实现网页的异步调用<%@ Language=VBScript %>
使用XmlHttp结合ASP实现网页的异步调用
<HTML>
使用XmlHttp结合ASP实现网页的异步调用
<HEAD>
使用XmlHttp结合ASP实现网页的异步调用
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
使用XmlHttp结合ASP实现网页的异步调用
</HEAD>
使用XmlHttp结合ASP实现网页的异步调用
<script language="javascript">
使用XmlHttp结合ASP实现网页的异步调用xmlhttp 
= new ActiveXObject("Msxml2.XMLHTTP");
使用XmlHttp结合ASP实现网页的异步调用
function fnDo(ID)
使用XmlHttp结合ASP实现网页的异步调用{
使用XmlHttp结合ASP实现网页的异步调用    
var xmlDom = new ActiveXObject("Msxml2.DOMDocument");         
使用XmlHttp结合ASP实现网页的异步调用    
var strURL = "GetInfo.asp?ID=" + ID;
使用XmlHttp结合ASP实现网页的异步调用        
使用XmlHttp结合ASP实现网页的异步调用    xmlhttp.Open(
"POST",strURL , true);
使用XmlHttp结合ASP实现网页的异步调用    xmlhttp.onreadystatechange 
= fnRun;
使用XmlHttp结合ASP实现网页的异步调用        
使用XmlHttp结合ASP实现网页的异步调用    xmlhttp.Send(xmlDom);
使用XmlHttp结合ASP实现网页的异步调用
使用XmlHttp结合ASP实现网页的异步调用    divTest.innerHTML 
= "Loading使用XmlHttp结合ASP实现网页的异步调用"
使用XmlHttp结合ASP实现网页的异步调用}
使用XmlHttp结合ASP实现网页的异步调用
//--------------------------------------------------------
使用XmlHttp结合ASP实现网页的异步调用
function fnRun()
使用XmlHttp结合ASP实现网页的异步调用{
使用XmlHttp结合ASP实现网页的异步调用    
var state = xmlhttp.readyState;
使用XmlHttp结合ASP实现网页的异步调用        
使用XmlHttp结合ASP实现网页的异步调用    
var xmlDom = new ActiveXObject("Msxml2.DOMDocument");
使用XmlHttp结合ASP实现网页的异步调用        
使用XmlHttp结合ASP实现网页的异步调用    
if (state == 4)
使用XmlHttp结合ASP实现网页的异步调用    {
使用XmlHttp结合ASP实现网页的异步调用        xmlDom.loadXML(xmlhttp.responseXML.xml);
使用XmlHttp结合ASP实现网页的异步调用        
//alert(xmlDom.documentElement.selectSingleNode("//objXML").text)
使用XmlHttp结合ASP实现网页的异步调用
        var getInfo = xmlDom.documentElement.selectSingleNode("//objXML").text;
使用XmlHttp结合ASP实现网页的异步调用        divTest.innerHTML 
= getInfo
使用XmlHttp结合ASP实现网页的异步调用    }        
使用XmlHttp结合ASP实现网页的异步调用}
使用XmlHttp结合ASP实现网页的异步调用
</script>
使用XmlHttp结合ASP实现网页的异步调用
<BODY>
使用XmlHttp结合ASP实现网页的异步调用
<input type=button value="异步调用" onclick="fnDo(document.all.txtInput.value)">
使用XmlHttp结合ASP实现网页的异步调用
<input type=text id=txtInput>
使用XmlHttp结合ASP实现网页的异步调用
<DIV id=divTest></DIV>
使用XmlHttp结合ASP实现网页的异步调用
使用XmlHttp结合ASP实现网页的异步调用
<P> </P>
使用XmlHttp结合ASP实现网页的异步调用
使用XmlHttp结合ASP实现网页的异步调用
</BODY>
使用XmlHttp结合ASP实现网页的异步调用
</HTML>
2.在建立GetInfo.asp(这是后台处理页面)
使用XmlHttp结合ASP实现网页的异步调用<%
使用XmlHttp结合ASP实现网页的异步调用
Dim sID,objResult
使用XmlHttp结合ASP实现网页的异步调用
使用XmlHttp结合ASP实现网页的异步调用sID 
= Trim(Request("ID"))
使用XmlHttp结合ASP实现网页的异步调用
'sID = 28
使用XmlHttp结合ASP实现网页的异步调用

使用XmlHttp结合ASP实现网页的异步调用
Set objResult = Server.CreateObject("MSXML2.DOMDocument")
使用XmlHttp结合ASP实现网页的异步调用objResult.loadXML (
"<objXML></objXML>")
使用XmlHttp结合ASP实现网页的异步调用
'**************************************************************
使用XmlHttp结合ASP实现网页的异步调用

使用XmlHttp结合ASP实现网页的异步调用
'**************************************************************
使用XmlHttp结合ASP实现网页的异步调用

使用XmlHttp结合ASP实现网页的异步调用objResult.selectSingleNode(
"objXML").text = "Get:" & sID
使用XmlHttp结合ASP实现网页的异步调用
使用XmlHttp结合ASP实现网页的异步调用Response.ContentType 
= "text/xml"
使用XmlHttp结合ASP实现网页的异步调用
objResult.save (Response)
使用XmlHttp结合ASP实现网页的异步调用Response.
End
使用XmlHttp结合ASP实现网页的异步调用
使用XmlHttp结合ASP实现网页的异步调用
Set objSch = Nothing
使用XmlHttp结合ASP实现网页的异步调用
Set objResult = Nothing
使用XmlHttp结合ASP实现网页的异步调用%
>

3.运行Display.asp页面,在文本框里输入内容,点击按钮,可以看到Loading的提示,随后在不刷新页面的情况下得到了文本框里的内容。当然你也可以在GetInfo.asp那个页面里根据发送的参数做一些复杂的出来,随后把结果返回出来。

相关文章: