ASP循环通过表单元素超时

时间:2013-07-24 16:28:35

标签: asp-classic

我们遇到的问题是ASP循环遍历表单的元素非常慢。创建的表单只是一个名称和复选框列表(在我们的示例中为21)。然后,我们想要遍历表单元素并找出勾选的复选框。

此例程创建表单,并且是即时的:

<%
  y = 0
  do while y <= ubound(overdueArray,2)%>
  <tr>
  <td width="25%">&nbsp;</td>
  <input type="hidden" name="employeeID<%=y%>" id="employeeID<%=y%>" value="<%=overdueArray(2,y)%>">
  <td align="center" style="border-width:1px;border-color:<%=session.Contents("PageTitleBorder")%>;border-left-style:solid;border-bottom-style:solid;">
  <%response.Write(overdueArray(0,y)&" "&overdueArray(1,y))%></td>
  <td align="center" style="border-width:1px;border-color:<%=session.Contents("PageTitleBorder")%>;border-left-style:solid;border-bottom-style:solid;border-right-style:solid;">
  <input type="checkbox" id="remind<%=y%>" name="remind<%=y%>" value="sendReminder<%=y%>">
  </td>                
  <td width="25%">&nbsp;</td>
  </tr>
  <%y = y + 1
  loop
%>

此代码会在屏幕上只显示21个项目时挂起或超时:

x = 0
do while x <= request.Form("total")
if request.Form("remind"&x) <> "" then
                response.Write("test") 
end if                    
x = x + 1
loop

我不是开发人员,也不了解ASP,这适用于我的同事,但尚未参加。

请问任何想法或建议?

1 个答案:

答案 0 :(得分:1)

对不起,经过几个小时的挣扎,我们解决了。我们首先将request.Form("total")放入一个会话变量(它是一个隐藏的表单元素),每次在循环中检查变量而不是表单元素。这解决了这个问题。