首页
会员中心
到顶部
到尾部
ASP教程

AJAX 数据库实例

时间:2020/11/2 13:21:14  作者:  来源:  查看:0  评论:0
内容摘要:AJAX 数据库实例AJAX ASPASP 快速参考AJAX 可用来与数据库进行相互的通信。AJAX 数据库实例下面的例子演示网页如何通过 AJAX 从数据库中读取信息: 请选择一位客户:Apple Computer, Inc.BAIDU, IncCanon USA, Inc.G...

AJAX 数据库实例

AJAX 可用来与数据库进行相互的通信。

AJAX 数据库实例

下面的例子演示网页如何通过 AJAX 从数据库中读取信息:

客户信息将在此处列出。

亲自试一下源代码

实例解释 - HTML 页面

当用户在上面的下拉列表中选择某位客户时,会执行名为 "showCustomer()" 的函数。该函数由 "onchange" 事件触发:

<!DOCTYPE html><html><head><script>function showCustomer(str){if (str=="")  {  document.getElementById("txtHint").innerHTML="";  return;  }if (window.XMLHttpRequest)  {// 针对 IE7+, Firefox, Chrome, Opera, Safari 的代码  xmlhttp=new XMLHttpRequest();  }else  {// 针对 IE6, IE5 的代码  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");  }xmlhttp.onreadystatechange=function()  {  if (xmlhttp.readyState==4 && xmlhttp.status==200)    {    document.getElementById("txtHint").innerHTML=xmlhttp.responseText;    }  }xmlhttp.open("GET","getcustomer.asp?q="+str,true);xmlhttp.send();}</script></head<body><form><select name="customers" onchange="showCustomer(this.value)"><option value="">Select a customer:</option><option value="ALFKI">Alfreds Futterkiste</option><option value="NORTS ">North/South</option><option value="WOLZA">Wolski Zajazd</option></select></form><br><div id="txtHint">客户信息将在此处列出...</div></body></html>

源代码解释:

如果没有选择客户(str.length 等于 0),那么该函数会清空 txtHint 占位符,然后退出该函数。

如果已选择一位客户,则 showCustomer() 函数会执行以下步骤:

  • 创建 XMLHttpRequest 对象
  • 创建在服务器响应就绪时执行的函数
  • 向服务器上的文件发送请求
  • 请注意添加到 URL 末端的参数(q)(包含下拉列表的内容)

ASP 文件

上面这段 JavaScript 调用的服务器页面是名为 "getcustomer.asp" 的 ASP 文件。

"getcustomer.asp" 中的源代码会运行一次针对数据库的查询,然后在 HTML 表格中返回结果:

<%response.expires=-1sql="SELECT * FROM CUSTOMERS WHERE CUSTOMERID="sql=sql & "'" & request.querystring("q") & "'"set conn=Server.CreateObject("ADODB.Connection")conn.Provider="Microsoft.Jet.OLEDB.4.0"conn.Open(Server.Mappath("/db/northwind.mdb"))set rs=Server.CreateObject("ADODB.recordset")rs.Open sql,connresponse.write("<table>")do until rs.EOF  for each x in rs.Fields    response.write("<tr><td><b>" & x.name & "</b></td>")    response.write("<td>" & x.value & "</td></tr>")  next  rs.MoveNextloopresponse.write("</table>")%>


上一篇:ASP Content Rotator
下一篇:ASP 实例
相关评论
广告联系QQ:45157718 点击这里给我发消息 电话:13516821613 杭州余杭东港路118号雷恩国际科技创新园  网站技术支持:黄菊华互联网工作室 浙ICP备06056032号