当前位置:首页 » 网站技术 » ASP

ASP中实现AJAX实例

...

现在AJAX的应用越来越广泛,我网站的数据读取部分就使用了这样的技术,它可以让页面在无刷新的情况下进行翻页、搜索等操作,这样会让用户感觉你的网站速度很快。很多人都在自己的网页中加入这样的技术,那么如何在ASP中使用AJAX呢?其实只要动态生成一个XML文件,然后用JavaScrip读取就行了。

下面就是一个简单的例子:

new_xml.asp文件

'以下为代码部分:
<?xml version="1.0" encoding="utf-8" ?>
<!-- #include file="conn.asp" -->
<DataList>
<%
dim i
i = 0
sql="Select top 5 * from news "
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,1
do while not rs.eof
%>
<REC<%=i%>>
<id><%=rs("news_id")%></id>
<title><%=rs("title")%></title>
</REC<%=i%>>
<%
i=i+1
rs.movenext
loop
rs.close
set rs=nothing
%>
</DataList>

使用简单的ASP程序动态生成一个XML文件,其中把需要的数据读取出来。

Index.html文件:

'以下为代码部分:
<body>
<div id="showXml">loading...</div>
<input type=button value="getXML" onclick="getnews()">

<!-- 以下为js脚本,包含单击button触发的getnews()方法 -->
<script language=javascript>
function getnews(){
var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
xmldoc.async = false;

if(!xmldoc.load("news_asp.asp")){
alert("读取数据失败!");
} else {
var xmlroot = xmldoc.documentElement.childNodes;
var showStr = ’<table border = 1>’;
var j;
var node = xmlroot.length;
var nodes;

while(j != node){
showStr += ’<tr>’;

for(j=0;j<node;j++){
nodes = xmlroot.nextNode();
showStr += ’<td>’;
showStr += nodes.selectSingleNode("id").text;
showStr += ’</td><td>’;
showStr += nodes.selectSingleNode("title").text;
showStr += ’</td>’;
}
showStr += ’</tr>’;
}

showStr += ’</table>’;
document.getElementById("showXml").innerHTML = showStr;

}
}
</script>
</body>

当单击button时,调用JavaScript中的getnews()方法,把内容添到<#DIV>中,实现这一切页面完全不用刷新。是不是很酷?

附:conn.asp链接数据库文件

'以下为代码部分:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
dim conn,connstr,time1,time2,mdb
time1=timer
mdb="mdb/data.mdb" ’Access数据库的路径
on error resume next
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(mdb)
Set Conn=Server.CreateObject("ADODB.Connection")
conn.Open connstr
If Err Then
err.Clear
Set Conn = Nothing
Response.Write "数据库连接出错,请检查连接字串。"
Response.End
End If
%>

继续阅读
ASP.NET进度条
没有数据时显示GridView表格
ASP.NET中的换行问题解决方案
ASP.NET跳转页面方法比较
ASP.NET内置功能抵御Web攻击
ASP.NET写文件实例
ASP禁用页面缓存的五种方法
ASP.NET页面间值传递方法实例
使用ASP.NET备份和还原SQL Server及Access数据库
发表评论

昵称:
最新评论
暂时没有评论!