asp中定义一个下拉列表组件DBCombo
时间:2010-12-25 来源:灰色的天空2
<%
Class DBCombo
private props,optsV,optsL
public Name_,Selected_
private Sub class_initialize
props = ""
optsV = null
End Sub
private Sub class_terminate
End Sub
public property let Properties_(sProp)
props = sProp
End property
public property get Properties_()
Properties_ = props
End property
public Sub setOptions(arrV,arrL)
optsV = arrV
optsL = arrL
End Sub
public Sub WriteHTML(sql_,conn)
Dim str_
str_ = "<select name="""&Name_&""""& Properties_&">"
Set objRs_ = conn.execute(sql_)
If sql_ <> "" Then
do while not objRs_.eof
If objRs_(0) = Selected_ Then
str_ = str_ & "<option value="&objRs_(0)&" selected>"&objRs_(1)&"</a>"
Else
str_ = str_ & "<option value="&objRs_(0)&">"&objRs_(1)&"</a>"
End If
objRs_.movenext
loop
End If
If not isnull(optsV) Then
For i_ = 0 To Ubound(optsV)
If optsV(i) = Selected_ Then
str_ = str_ & "<option value="&optsV(i_)&" selected>"&optsL(i_)&"</a>"
Else
str_ = str_ & "<option value="&optsV(i_)&">"&optsL(i_)&"</a>"
End If
Next
End If
str_ = str_ & "</select>"
Response.Write(str_)
objRs_.close
Set objRs_ = nothing
End Sub
End Class
%>
使用方法:
1 先引入该文件。
2
<%
Dim objConn,connstr,str
Set objConn = Server.CreateObject("ADODB.Connection")
connstr = "PROVIDER=SQLOLEDB;Server=(local);DATABASE=link;UID=sa;PWD=726914;"
objConn.Open connstr
Set cmb = new DBCombo
arrV = array(0)
arrL = array("其他")
With cmb
.Name_ = "type"
.Selected_ = 3
.SetOptions arrV,arrL
.writeHTML "select webtype_id,webtype_name from webtype",objConn
End With
%>
说明:
Name_ :列表框名字
Selected_ :默认选中项的value值
SetOptions :在列表框末尾添加项
optsV :添加的数组value=option中value
optsL :添加的数组text=option中显示的值
props :下拉列表<select>标记的属性字符串
WriteHTML:输出
asp中定义一个下拉列表组件DBCombo- ASP教程