Asp classic 在经典ASP中从SQL填充下拉列表

Asp classic 在经典ASP中从SQL填充下拉列表,asp-classic,drop-down-menu,Asp Classic,Drop Down Menu,我试图强制用户在添加记录时只选择某些值。因此,我自然会使用下拉列表,但我希望选项由数据库中的特定字段填充。我想我会做一个do/Loop,但显然我做错了什么 Dim dstrSQL Dim drs dstrSQL = "SELECT EventID FROM Events" set conn2 = CreateObject("ADODB.Connection") conn2.open CONN_STRING set drs = conn2.execute(dstrS

我试图强制用户在添加记录时只选择某些值。因此,我自然会使用下拉列表,但我希望选项由数据库中的特定字段填充。我想我会做一个do/Loop,但显然我做错了什么

Dim dstrSQL
Dim drs
    dstrSQL = "SELECT EventID FROM Events"
    set conn2 = CreateObject("ADODB.Connection")
    conn2.open CONN_STRING
    set drs = conn2.execute(dstrSQL)
    conn2.close: set conn2 = nothing
Do
        Response.Write "<option value=" & drs.Fields(0) & " >" & drs.Fields(0) & "</option>"
        drs.MoveNext
Loop
Dim dstrSQL
暗drs
dstrSQL=“从事件中选择EventID”
set conn2=CreateObject(“ADODB.Connection”)
连接2.打开连接线
设置drs=conn2.execute(dstrSQL)
conn2.close:设置conn2=无
做
响应。写入“”&drs.Fields(0)和“”
MoveNext博士
环

好久不见了。大概是这样的:

conn2.open CONN_STRING
set drs = conn2.execute(dstrSQL)

do while not drs.eof %>

    <option value="<%= drs.Fields(0) %>" ><%= drs.Fields(0) %></option>
    <% drs.MoveNext
Loop
 conn2.close
 set conn2 = nothing %>
conn2.打开连接字符串
设置drs=conn2.execute(dstrSQL)
不做而不做drs.eof%>

好久不见了。大概是这样的:

conn2.open CONN_STRING
set drs = conn2.execute(dstrSQL)

do while not drs.eof %>

    <option value="<%= drs.Fields(0) %>" ><%= drs.Fields(0) %></option>
    <% drs.MoveNext
Loop
 conn2.close
 set conn2 = nothing %>
conn2.打开连接字符串
设置drs=conn2.execute(dstrSQL)
不做而不做drs.eof%>

棒极了,超快!感谢bunch=)我似乎还记得需要使用字段的.Value属性,因此循环中应该有drs.Fields(0.Value)。可能是错误的…也许吧。值是默认属性,所以它是可选的。如果drs是ADODB记录集对象,您也可以使用drs(“EventID”)Jon P,我想说一些类似的东西。我更喜欢命名列,因为它们更容易记住它们的意思。太棒了,超快!感谢bunch=)我似乎还记得需要使用字段的.Value属性,因此循环中应该有drs.Fields(0.Value)。可能是错误的…也许吧。值是默认属性,所以它是可选的。如果drs是ADODB记录集对象,您也可以使用drs(“EventID”)Jon P,我想说一些类似的东西。我更喜欢命名列,因为它们更容易记住它们的意思。