Asp classic asp中的组合框更新

Asp classic asp中的组合框更新,asp-classic,Asp Classic,我想在这里做的是根据组合框中选择的选项加载图片。但是当我在重新加载页面后从组合框中选择“2011”时,所选的选项又是2012..plz help me out。。。。 这是我的ASP代码 !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html>< <head><

我想在这里做的是根据组合框中选择的选项加载图片。但是当我在重新加载页面后从组合框中选择“2011”时,所选的选项又是2012..plz help me out。。。。 这是我的ASP代码

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><
<head><title>Sinhgad Alumni</title>
<script type="text/javascript"></script>
</head>
<link rel="stylesheet" type="text/css" href="theme/gallery.css">
<body>
<%dim conn,rs,alumniyear,rs2
 Response.write(alumniyear)
    Set conn=Server.createObject("ADODB.Connection")
    Set rs=Server.createObject("ADODB.Recordset")
    Set rs2 = server.createObject("ADODB.Recordset")
    conn.open="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &Server.MapPath("alumni.mdb") & ""
    rs.open "select * from alumni",conn
    %>
<div id="maincontent">
<div class="show">
<form name="form1" method="post"action="gallery.asp">
<h2 style="font:20px SegoeUI, 'Segoe UI', arial, sans-serif;margin: 0 auto;width: 300px;">Pictures of alumni in year:
<select name="drpyear" style="margin: 0 auto;width: 150px;height: 30px;text-align: center" onChange="javascript: document.forms['form1'].submit()" >
<%while NOT rs.EOF%>
<option onclick="javascript: document.forms['form1']">
<%response.write(rs("alumniyear"))%>
</option>
<%rs.MoveNext%>
<%wend%>
</select>
</h2>
</form>
<ul id="gallery">
<%alumniyear=Request("drpyear")
rs2.open "select * from gallery where alumni='"&alumniyear&"'",conn
if rs.EOF then%>
<li><img height="200"width="200" src=<%response.write(rs2("link"))%>></li>
<%else%>
<%while NOT rs2.EOF%>
<li><img height="200"width="200" src=<%response.write(rs2("link"))%>></li>
<%rs.MoveNext
WEND
end if
conn.Close
Set conn =Nothing%>
</ul>
</div>`
!DOCTYPE html PUBLIC“-//W3C//DTD XHTML1.0//EN”http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
新加坡校友会
年度校友照片:
  • >
  • >
`
您需要在构建while循环时检查选择选项,选择哪一个。 像这样的

<%while NOT rs.EOF%>       
    <option onclick="javascript: document.forms['form1']"
    <% if (Request.Form("drpyear") = rs("alumniyear")) then response.write "selected='selected'"%>
    >
    <%response.write(rs("alumniyear"))%>
    </option>
<%rs.MoveNext%>


编辑:更新代码以使用Request.Form(“drpyear”)而不是Request(“drpyear”)以最大限度地减少开销

非常感谢您的帮助……但是您能解释一下代码吗@user1720452代码中的加法检查提交的请求值是否等于记录的“alumniyear”值。。如果是,则在我从组合框中选择选项时,设置option元素()的“selected”属性。但是当第一次加载页面时。代码返回0。但是项目被加载到组合框中。嗨,代码工作得很好。但是只有当我选择一个选项时,图像才会被加载,但是当第一次加载页面时,什么也没有发生。发生关于“EOF或BOF可能为真”的错误。当我尝试时,它返回0。当尚未选择任何选项时,您可以为第一页加载指定默认值。。。对于“eof或bof”错误。。在第二个循环中检查rs.EOF和rs.MoveNext。。可能需要分别为rs2.EOF和rs2.MoveNext。。。