当前位置: 首页 > 图文教程 > 网络编程 > ASP > 使用xmlHttp结合ASP,实现网页的异步调用

ASP
利用ASP将HTML格式数据传输给Excel 的技巧
用ASP CSS实现随机背景
用ASP实现在线文章翻译的功能
动态网页爱好者来看:Asp过滤HTML的函数
自动去除字符中含有html代码的几个ASP函数
用ASP对网页进行简单的保护
ASP网页开发过程中的几个小技巧
ASP动态网页制作中使用SQL语句的方法
ASP开发中存储过程应用全接触
入门:初学ASP动态网页制作常用错误处理
ASP动态网页下UTF-8页面乱码的解决方法
小技巧:解决ASP脚本运行超时的方法
动态网页制作技术ASP开发中的常见问题
动态网页技术ASP日期和时间函数示例
ASP程序实现保存参数值的分页功能
用ASP寻找到真实IP地址的方法
ASP中文显示解决技巧及创建对象方法
ASP实例:Asp 防止网页频繁刷新一法
将ASP动态网页转换成HTM静态页面的方法
技巧:得到刚刚插入的记录的自动编号值一例

使用xmlHttp结合ASP,实现网页的异步调用


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 34 ::
收藏到网摘: n/a

  通过xmlHttp和ASP的结合,我们可以轻松完成网页的异步调用。
代码如下:
1.新建Display.asp(这是前台显示页面)
注意xmlhttp.readyState的4个属性
1:LOADING;2:LOADED;3:INTERACTIVE;4:COMPLETED

<%@ Language=VBScript %>
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<script language="javascript">
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
function fnDo(ID)
{
    var xmlDom = new ActiveXObject("Msxml2.DOMDocument");         
    var strURL = "GetInfo.asp?ID=" + ID;
        
    xmlhttp.Open("POST",strURL , true);
    xmlhttp.onreadystatechange = fnRun;
        
    xmlhttp.Send(xmlDom);

    divTest.innerHTML = "Loading..."
}
//--------------------------------------------------------
function fnRun()
{
    var state = xmlhttp.readyState;
        
    var xmlDom = new ActiveXObject("Msxml2.DOMDocument");
        
    if (state == 4)
    {
        xmlDom.loadXML(xmlhttp.responseXML.xml);
        //alert(xmlDom.documentElement.selectSingleNode("//objXML").text)
        var getInfo = xmlDom.documentElement.selectSingleNode("//objXML").text;
        divTest.innerHTML = getInfo
    }        
}
</script>
<BODY>
<input type=button value="异步调用" onclick="fnDo(document.all.txtInput.value)">
<input type=text id=txtInput>
<DIV id=divTest></DIV>

<P> </P>

</BODY>
</HTML>

2.在建立GetInfo.asp(这是后台处理页面)
<%
Dim sID,objResult

sID = Trim(Request("ID"))
'sID = 28

Set objResult = Server.CreateObject("MSXML2.DOMDocument")
objResult.loadXML ("<objXML></objXML>")
'**************************************************************

'**************************************************************

objResult.selectSingleNode("objXML").text = "Get:" & sID

Response.ContentType = "text/xml"
objResult.save (Response)
Response.End

Set objSch = Nothing
Set objResult = Nothing
%>

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