在Classic ASP中选择案例编号

Vix*_*xed 0 vbscript asp-classic

如何在Classic ASP中选择以下选项?

<%
Select case aNumber
    case 1 to 2
        a="pizza"
    case 3 to 4
        a="pasta"
    case else
        a="spaghetti"
end select
%>
Run Code Online (Sandbox Code Playgroud)

Kul*_*gin 7

指定范围Select Case Statement是从VB6的日期开始,可能更旧.VBA和VB.Net也支持但从未在VBScript中实现,很奇怪.所以你不能.

但是还有其他方法可以达到类似的效果.像下面的解决方法,例如:

Select Case True 'looking for True
    Case aNumber >= 1 And aNumber <= 2
        a = "pizza"
    Case aNumber >= 3 And aNumber <= 4
        a = "pasta"
    Case Else
        a = "spaghetti"
End Select
Run Code Online (Sandbox Code Playgroud)

或者通过辅助函数增强:

Function InRange(val, min, max)
    InRange = val >= min And val <= max
End Function

Select Case True 'looking for True
    Case InRange(aNumber, 1, 2)
        a = "pizza"
    Case InRange(aNumber, 3, 4)
        a = "pasta"
    Case Else
        a = "spaghetti"
End Select
Run Code Online (Sandbox Code Playgroud)

  • @Lankymart我敢打赌,而不是几十个嵌套的`If`块:/ (2认同)