2013-07-24 108 views
0

我們遇到了ASP循環遍歷表單元素很慢的問題。創建的表單只是名稱和複選框的列表(在我們的示例中爲21)。然後,我們想要遍歷表單元素,並確定選中哪個複選框。ASP循環遍歷表單元素

該程序創建窗體,並瞬間:

<% 
    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

對不起,經過幾個小時的努力,我們解決了它。我們先將request.Form("total")放入一個會話變量(它是一個隱藏的表單元素),並且每次在循環中檢查變量而不是表單元素。這解決了這個問題。

+1

小時?看起來更像6分鐘。 –

+0

heh。我們一直努力工作了很長時間,以至於在我需要的時候轉向了SO。可以預計的是,在這樣做後的幾分鐘裏,網絡開發人員勝出了。 –

+0

哦,墨菲定律當然! :) –