2012-04-16 39 views
1

我想编辑一些以classic-ASP编写的遗留代码。可以在循环停止时计数器达到X

目前我有一个声明子程序使用for-next循环输出一些单选按钮:

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

是一个简单的计数器,列数是传递到子的值-常规。我试图编辑for循环是一个while循环,而不是:

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

但我得到一个超过响应缓冲区限制错误。如果我将Cols替换为正常工作的值。这是经典ASP的限制吗?


原因我想用一个do while循环是因为目前的子程序仅限于循环从1至列数。这将是有帮助的,有时指定循环计数向后(即步骤-1),但我不能写:

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

回答

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 
+0

这一工程!我没有意识到你可以“步骤X”并将X作为变量。谢谢。 – Dan 2012-04-16 19:19:24