<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      不刷新頁面篩選數據庫中的數據

      [摘要]我在作asp程序時經常遇到這種情況:  將數據庫中的數據(如所有雇員名)列在列表框中,程序要求進行選擇其中一項或多項提交到下一個頁面! 〉闊┑氖侨绻麛祿(如雇員)過多,會給客戶的選擇帶來麻煩--...

        我在作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>
          <td>
            <input type="text" name="searchContent">
            <input type="button" name="Button" value="查詢" onclick="javascript:return search_onclick()">
          </td>
        </tr>
        <tr>
          <td> 查詢結果<br>
            <select name="searchObj" size="10">
              <%do while not rs.eof%>
              <option value="<%=rs("employeeid")%>"><%=rs("lastname")%></option>
              <%rs.movenext
      loop
      %>
            </select>
            <select name="searchSource" size="10" style="display:none">
              <%
      'www.knowsky.com
      rs.movefirst
      do while not rs.eof%>
              <option value="<%=rs("employeeid")%>"><%=rs("lastname")%></option>
              <%rs.movenext
      loop
      %>
            </select>
          </td>
        </tr>
      </table>
      <%rs.close
      set rs=nothing
      %>
      </body>
      </html>




      日韩精品一区二区三区高清