RSS
热门关键字:  下载  cms  模版  开源  dedecms

将sTableName表中的sFieldNameArr数组字段数据根据条件sWhere加载到selName

来源:互联网 作者:未知 时间:2002-12-11 Tag: 点击:

'---------------------------------------------------------------------------
'本函数用于将sTableName表中的sFieldNameArr数组字段数据根据条件sWhere加载到selName
'控件中去,返回值是加载的数据记录数.
'其中bShowAll参数为1是表示在selName中的第一项内容是'请选择...'其值表示所有的内容
'    iFieldCount 表示字段名和数量
'---------------------------------------------------------------------------
Function AHshLoadSelData(selName,sTableName,sFieldNameArr,sWhere,iFieldLenArr,iFieldCount,bShowAll)
Dim strSql,rstTmp,iCount,strTmp,i

'构造查询字段列表 ------------------------------------------
strTmp = ""
For i = 1 To iFieldCount - 1
strTmp = strTmp & sFieldNameArr(i) & ","
Next
strTmp = strTmp & sFieldNameArr(iFieldCount) 

strSql = "Select Distinct " & strTmp & " From Ams." & sTableName & " " & sWhere 

set rstTmp = Server.CreateObject("ADODB.RecordSet") 
rstTmp.Open strSql,Session("OraAMSCnn") 
Response.Write("<Script Language = 'Javascript'>" & vbCrLf)  

'先清空selName中的所有Option  -------------------------------------------
Response.Write("for (i = " & selName & ".options.length ; i >= 0 ; i --)" & vbCrLf) 
Response.Write("{" & selName & ".options[i] = null ; }" & vbCrLf) 

Response.Write("var optItem ;" & vbCrLf) 

If bShowAll = 1 Then  ' 表示要显示所有内容
Response.Write("optItem = document.createElement('OPTION') ; " & vbCrLf) 
Response.Write("optItem.text = '请选择...' ; " & vbCrLf)
Response.Write("optItem.value = 'ALL' ; " & vbCrLf)  
Response.Write(selName & ".add(optItem);" & vbCrLf) 
End if

If Not(rstTmp.Bof And rstTmp.Eof) Then
rstTmp.MoveFirst 
iCount = 0 
Do While Not rstTmp.Eof 
Response.Write("optItem = document.createElement('OPTION') ; " & vbCrLf) 
strTmp = ""
For i = 0 To iFieldCount - 1
strTmp = strTmp & AHshRFillStr(rstTmp.Fields(i)," ",iFieldLenArr(i + 1)) & ">"
Next
strTmp = Mid(strTmp,1,Len(strTmp) - 1)
Response.Write("optItem.text = '" & strTmp & "' ; " & vbCrLf)
Response.Write("optItem.value = '" & strTmp & "' ; " & vbCrLf)  
Response.Write(selName & ".add(optItem);" & vbCrLf) 
iCount = iCount + 1 
rstTmp.MoveNext 
Loop 
End If
rstTmp.Close 
set rstTmp = Nothing 
If iCount > 0 Then
Response.Write(selName & ".selectindex = 1 ;" & vbCrLf) 
End IF
AHshLoadSelData = iCount 
Response.Write("</Script>" & vbCrLf) 
End Function  

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册