当计数器达到X时,Can Do While Loop停止

时间:2012-04-16 16:34:35

标签: asp-classic while-loop

我想编辑一些用经典ASP编写的遗留代码。

目前,我已经宣布了一个子程序,该子程序使用for-next循环输出一些单选按钮:

 For i = 1 to Cols
   response.write "blah"
   ...
 Next

i 只是一个计数器, Cols 是传递给子例程的值。我尝试将for循环编辑为while循环:

i = Start
do while i <= Cols
  response.write "blah"
  ...
  i = i + 1
loop

但是我得到了一个超出响应缓冲区限制的错误。如果我用值替换Cols,它可以正常工作。这是classic-ASP中的限制吗?


我想使用do while循环的原因是因为当前子例程仅限于从1循环到 Cols 。有时向后指定循环计数(即步骤-1)会有所帮助,但我不能写:

if Direction = Backwards then 
  For i = Cols to 1 step -1
else
  For i = 1 to Cols
end if

1 个答案:

答案 0 :(得分:5)

怎么样:

If Direction = Backwards Then
    cs = 10
    ce = 1
    s = -1
Else
    cs = 1
    ce = 10
    s = 1
End If

For i = cs To ce Step s
    ''
Next