当前位置: 首页 > 图文教程 > 网络编程 > ASP > 不刷新页面筛选数据库中的数据

ASP
IIS访问ASP页面时报错The requested resource is in use.的解决办法
错误类型:Provider (0x80004005)未指定的错误 的一个处理方法
关于asp+access的安全问题分析
把RS.GetRows看得更清楚
asp下UTF-8页面乱码的解决方法
解决使用良精企业建站7.0未注册问题
在ASP中连接MySQL数据库的方法,最好的通过ODBC方法
flash与js通讯方法
ASP操作Excel相关技术总结
解决用Access数据库建站维护不便的问题的方法
ASP实现GB2312字符与区位码的相互转换的代码
对于ASP编码问题的深入研究与最终解决方案
ASP生成UTF-8编码的代码
删除A表中在B表中不存在的数据
动网防恶意广告比较有效的办法附asp代码
asp磁盘缓存技术使用的代码
网页语言编码及asp乱码问题解决方案
FSO遍历目录实现全站插马的代码
关于无限分级(ASP+数据库+JS)的实现代码
如何写ASP入库小偷程序

ASP 中的 不刷新页面筛选数据库中的数据


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

 

  我在作asp程序时经常遇到这种情况:
  将数据库中的数据(如所有雇员名)列在列表框中,程序要求进行选择其中一项或多项提交到下一个页面。
  但麻烦的是如果数据(如雇员)过多,会给客户的选择带来麻烦--要从很长的列表中进行数据定位。最好的解决方法是用户在选择前采用模糊查询的方式进行数据定位,准确找出需要选择的雇员名,再选择、提交。
  问题出现在我们程序员面前:如何不刷新页面筛选从数据库中筛选数据。本人的方法有两种:
  1、采用双列表框的方法
  2、采用XML方法
  本文主要介绍第一种方法:采用双列表框的方法
  编程思想:
  采用双列表框,其中一个为隐藏状态,另一个是显示给用户看的列表框。
  程序开始将数据(如雇员姓名)分别装进两个列表框中,当用户需要筛选雇员时首先将显示列表框清空,再更据筛选条件将数据从隐藏列表框装入显示列表框中。
  这样即可实现不刷新页面筛选数据库中的内容。
  实现:
  下面以SQL SERVER为例,筛选NorthWind库中Employees表的雇员名进行说明。


<html>
<head>
<title>不刷新页面查询的方法</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<script language="javascript">
 function search_onclick(){
   //得到筛选雇员的名字
   //www.knowsky.com
   searchtext=window.searchContent.value;
  
   //首先移除在所有查询结果列表中的选项
   //www.knowsky.com
      j=searchObj.length ;
    for (i = j-1;  i>=0; i--)
    {
     searchObj.remove(i);
    }
   if(searchtext!=""){
   //显示符合筛选条件的雇员
    j=searchSource.length;
    for(i=0;i<j;i++){
     searchsource=searchSource.options(i).text;
     k=searchsource.indexOf(searchtext);  
     if(k!=-1){
      option1=document.createElement("option");
            option1.text=searchsource;
      option1.value=searchSource.options(i).value;   
      searchObj.add(option1);
      }
     }
    }
    else{
    //如果没有输入查询条件则显示所有雇员
        j=searchSource.length;
     for(i=0;i<j;i++){
      searchsource=searchSource.options(i).text;
      option1=document.createElement("option");
      option1.text=searchsource;
      option1.value=searchSource.options(i).value;   
      searchObj.add(option1);
      }
     }
   }
   //www.knowsky.com
</script>
<body bgcolor="#FFFFFF" text="#000000">
<%
  servername="wyb"            '服务器名
  user="sa"                   '用户名         
  pw=""                       '用户密码
  databasename="northwind"    '数据库名
  set conn=server.CreateObject("adodb.connection") 
  conn.Open "DRIVER=SQL Server;SERVER="&servername&";UID="&user&";pwd="&pw&";DATABASE="&databasename
  set rs=server.CreateObject("adodb.recordset")
  sql="Select employeeid,lastname from employees order by employeeid"
  rs.Open sql,conn%>
<table width="80%" border="1">
  <tr>