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






2.80/5 (5投票s)
2004年4月21日

79283

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')">