65.9K
CodeProject 正在变化。 阅读更多。
Home

带数据库连接的多选列表框

starIconstarIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIcon

2.80/5 (5投票s)

2004年4月21日

viewsIcon

79283

downloadIcon

710

动态创建多选列表框。

引言

本文/代码片段演示了如何在 ASP 文档中动态创建一个多选列表框,其内容/数据/项目存储在数据库中的一个表中。 文件组织良好,方便您参考。

使用代码

数据库连接位于 global.asa 中,可以通过简单的 MS Access 数据库或 MS SQL Server 数据库进行连接。

示例代码

'

'FOR MS SQL SERVER DATABASE

'==========================

application("con").open "PROVIDER=MSDATASHAPE;DRIVER=" & _ 
     "{SQL Server};SERVER=[SERVER];DATABASE=[DATABASE];UID=[USERID];PWD=[PASSWORD]; "
      
'FOR MS ACCESS DATABASE

'==========================

application("con").open "Driver={Microsoft Access Driver (*.mdb)};" _
        & "DBQ=" & Server.MapPath("database/main.mdb")

<modules> 中,utility.asp 中包含用于数据检索的 Recordset 处理。

示例代码

'

'DEFINITION

'==========================

Sub CrRst(byref rst, rstctr, strsql)
    set rsCreate = server.CreateObject("adodb.recordset")
    ......
    ......

    'IMPLEMENTAION

    '==========================

    CrRst rst, ctr, <SQL>
   'rst - holds the records/data in array, 

   'e.g. rst(1,2), (1) - indicates the field:(2) - indicates the record

   'ctr - record counter

  '<SQL> - SQL statement

<modules> 中,utility.asp 中包含从 Recordset 返回的项目/数据创建多选列表框的代码。

示例代码

'

'DEFINITION

'==========================

sub listbox_mul(name, strsql, blank, selected, events, width_in, size_in)
    response.write "<SELECT name='" & name & "' id='" & _
                   name & "'" & events & " size='" & _
                   size_in & "' style='width:" & width_in & "px'>" & crlf
    ......
    ......

    'IMPLEMENTAION

    '==========================

    <%listbox_mul "optFilterOpt", _
       "select ID, ITEM from tblRefItems order by ID" , true, "", "", 100, 10%>

列表框项目/数据传输功能位于 <includes> 中的 listbox_option.js 中。

示例代码

'
'DEFINITION
'==========================
function SelAll(a, b){
    availableList = document.getElementById(a);
    ......
    ......

    'IMPLEMENTAION
    '==========================
    <input type="button" value=">>" 
      name="addAll" onclick="SelAll('optFilterOpt','optFilterSel')">
© . All rights reserved.