成人午夜激情影院,小视频免费在线观看,国产精品夜夜嗨,欧美日韩精品一区二区在线播放

當前位置:首頁>>開發編程>>ASP>>新聞內容
連動下拉菜單[數據庫版]
作者: 發布時間:2003-10-7 14:37:01 文章來源:

    想了好久得出的方法,想著很多人都為此問題得不到解決而苦惱,本著代碼共享的原則,現公布出來供大家指正(其實不說出來我也難受)。如果您覺得不錯請幫忙提提前,好讓更多的朋友看到。

    此方法絕不是事先將所有記錄都寫入到頁面中再通過腳本過濾,那樣雖然簡單,但對于大的數據量顯然就不適合了,而且還嚴重浪費資源。

    將下面的代碼稍作修改即可應用于其它地方,非常方便。

    為測試用,先建一名 Test.mdb 的 Access2000 數據庫,建立兩個表 Type,Title,結構如下:
Type
******************
ID    自動編號,主鍵
名稱  文本,長度合適

Title
********************
ID    自動編號,主鍵
類別  長整形數字,并聯 Type 表的 ID 字段
標題  文本,長度合適

    我們的目的是從 Type 表中讀取記錄并寫入到第一個列表框中,并在第一個列表框選擇時從 Title 表中過濾出相應記錄寫入到第二個列表框中,并且可以隨時獲得第二列表框所選的值。

    關鍵:在 B.asp 放置一隱藏域,來存放第二列表框所選的值,在 A.asp 中通過腳本來訪問該隱藏域的值來達到跨頁面讀取數值的目的。

'********************************************************
'  conn.asp   連接數據庫,這里用 test.mdb 來作測試
'********************************************************
<%
   dim conn  
   dim connstr

   connstr="DBQ="+server.mappath("test.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
   set conn=server.createobject("ADODB.CONNECTION")
   conn.open connstr
%>

'********************************************************
'  A.asp   主頁面,內嵌 B.asp(第二列表框在B.asp頁面)
'********************************************************
<!--#include file="conn.asp"-->
<table>
<tr><td>
<form method="POST" action="">
<%
Dim I,FirstID
I=1
Set Rs= Server.CreateObject("ADODB.Recordset")
SQL="SELECT * FROM Type;"
RS.Open SQL,Conn,1,1
Response.Write "第一列表框 <select size='1' ID='A' name='A' OnChange='VBScript:ChangType'>"
DO While Not RS.Eof
Response.Write "<option value='" & RS("ID") & "'>" & RS("名稱") & "</option>"
RS.MoveNext
Loop
Response.Write "</select>"
%>
<P>
<IFRAME HEIGHT="40" WIDTH="500" FRAMEBORDER=NO MARGINHEIGHT=0 SRC="B.asp?ID=1" ID="TitleFrame">
</IFRAME>
</P>
<P>
<input type='button' onclick='vbscript:Show.innerText="選擇的值是:" & Document.Frames(0).Document.All.H.value' value='查看第二列表框所選值'>
</P>
</Form>
</td></tr>
<tr><td ID="Show">
</td></tr>
</table>

<Script Language=VBScript>
Sub ChangType
TitleFrame.Location.Replace("B.asp?ID=" & Document.All.A.Value)
End Sub
</Script>
<%
RS.Close
Set RS=Nothing
Conn.Close
Set Conn=Nothing
%>

'********************************************************
'  B.asp   第二列表框所在頁面,內嵌于 A.asp
'********************************************************
<!--#include file="Conn.asp"-->
<%
 TypeID=Trim(Request.QueryString("ID"))
 Dim RS
 Set RS= Server.CreateObject("ADODB.Recordset")
 SQL="SELECT * FROM Title Where 類別=" & TypeID & ";"
 RS.Open SQL,Conn,1,1
 Response.Write "第二列表框 <select size='1' name='B' ID='B'  OnChange='H.value=this.options[this.selectedIndex].value'>"
 Do While Not RS.Eof
  Response.Write "<option value='" & RS("ID") & "'>" & RS("標題") & "</option>"
  RS.MoveNext
 Loop
  Response.Write "</select>"
 RS.Close
 Set RS=Nothing
 Conn.Close
 Set Conn=Nothing
%>
<input type="hidden" name="H">
<script Language="vbscript">
H.value=B.options(B.selectedIndex).value
</script>


最新更新
·數據庫被掛馬的ASP處理方法
·ASP快速獲取遠程文件大小的方
·用ASP屏蔽迅雷和旋風下載工具
·解決ASP中傳送中文參數亂碼的
·ASP+AJAX做類似Google的搜索
·ASP的一個非常棒的Debug類(
·ASP中常用的服務器檢測源代碼
·優化ASP中執行SQL效率的五個
·ASP種msxml3.dll 800c0005錯
·掛QQ的ASP版本網頁源代碼
相關信息
放生
愚愛
夠愛
觸電
白狐
心跳
知足
犯錯
降臨
分愛
葬愛
光榮
畫心
火花
稻香
愛得起
這種愛
大丈夫
花蝴蝶
二缺一
小酒窩
下雨天
右手邊
安靜了
棉花糖
明天過后
邊做邊愛
擦肩而過
沒有如果
懷念過去
等一分鐘
越來越愛
寂寞暴走
你的承諾
Nobody
我們都一樣
永遠在身邊
天使的翅膀
原諒我一次
i miss you
原諒我一次
吻的太逼真
姑娘我愛你
做你的愛人
一定要愛你
飛向別人的床
愛上別人的人
感動天感動地
心在跳情在燒
不潮不用花錢
如何能把你忘記
即使知道要見面
愛上你是一個錯
最后一次的溫柔
愛上你是我的錯
怎么會狠心傷害我
親愛的那不是愛情
傷心時候可以聽情歌
愛上你等于愛上了錯
不是因為寂寞才想你
主站蜘蛛池模板: 徐州市| 廉江市| 乌兰察布市| 德保县| 邯郸市| 梧州市| 乐安县| 普陀区| 福清市| 安庆市| 松江区| 健康| 股票| 棋牌| 台北县| 阿坝| 湘潭县| 定兴县| 临猗县| 邛崃市| 砀山县| 文山县| 自治县| 玉田县| 遂平县| 巴中市| 深水埗区| 资溪县| 平江县| 津市市| 惠安县| 绥芬河市| 龙门县| 静乐县| 阜新市| 洞口县| 永年县| 聂拉木县| 西乌| 扶余县| 都匀市|