Hermit
Lv 4
Hermit 發問時間: 電腦與網際網路程式設計 · 1 0 年前

asp下拉式選單問題

請幫我看一下程式碼…

<%

AddressCounty_NO=request("AddressCounty_NO")

AddressCounty_Name=request("AddressCounty_Name")

Dim objConn

Set objConn = Server.CreateObject("ADODB.Connection")

objConn.ConnectionString="driver={Microsoft Access Driver (*.mdb)};DBQ=" & server.mapPath("em.mdb")

objConn.Open

%>

<html>

<head>

</head>

<body>

<form id="form1" name="form1" method="post" action="employees.asp">

<p align="center">&nbsp;</p>

<p>員工編號

<input name="Employees_NO" type="text" id="Employees_NO" />

</p>

<p>身份證字號

<input name="Employee_ID" type="text" id="Employee_ID" />

</p>

<p>縣市

<select name="AddressCounty_NO">

<%

Dim sql ,ps

sql = "select 員工資料.*, 縣市代碼表.* from 員工資料, 縣市代碼表 where 員工資料.Employees_NO='" & request("Employees_NO") & "' and 員工資料.AddressCounty_NO=縣市代碼表.AddressCounty_NO"

ps = objConn.Execute(sql)

for i=1 to ps.eof

%>

<option value="<% = ps("AddressCounty_NO") %>"> <% response.Write ps("AddressCounty_Name")%> </option>

<% ps.movenext

next%>

</select>

</p>

<p>地址

<input name="Address" type="text" id="Address" size="50" />

</p>

</form>

</body>

</html>

為什麼我的下拉式選單都出現不了值

而這是asp的檔案

可以請大大告訴我原因嗎?

2 個解答

評分
  • 1 0 年前
    最佳解答

    很簡單!

    因為for i=1 to ps.eof

    當有資料時... ps.eof=0

    而 i=1to 0

    迴圈當然不會動

    方法很多...

    先試試...把ps.eof改成ps.RecordCount

    或是

    把ps.eof改成1

    並且在加上

    if ps.eof then next for

    (寫成一行喔!)

    參考資料: 自己~!
  • 1 0 年前

    照我的習慣..寫法是

    <%While not ps.eof%>

    <option value="<% = ps("AddressCounty_NO") %>"> <% response.Write ps("AddressCounty_Name")%> </option>

    <%ps.movenext%>

    <%wend%>

    參考資料: 自己
還有問題?馬上發問,尋求解答。