经典 ASP FormatPercent 忽略 100%?

Classic ASP FormatPercent ignores 100%?

下面的代码计算出我的数据的百分比。除了应该是红色 (#B20000) 但实际上是绿色 (#32CD32) 的 100% 之外,一切正常。我添加了一个专门指 100% 的选项,但即使这样也没有效果。有任何想法吗?谢谢

R = FormatPercent( objRsStat("active_beds") / objRsStat("total_beds"), 2 )
'R = objRsStat("percent_remaining")
If R =< "60%" Then
    CL = "#32CD32"
ElseIf R => "61%" And R =< "79%" Then
    CL = "#FF8000" 
ElseIf R => "80%" Then
    CL = "#B20000"
ELSEIF R = "100%" Then
    CL = "#B20000"
END IF

更新代码(有错误):

If R <= 0.6 Then
    CL = "#32CD32"
ELSEIF R => 0.61 AND R <= 0.79 THEN
    CL = "#FF8000" 
ELSEIF R => 0.80 THEN
    CL = "#B20000"
END IF

您使用了错误的语法。 <= "60%" 会将 R 中的 numeric 值与 string“60%”进行比较。 VBScript 不会抱怨这一点,因为它是宽容的设计,但这也会导致无声的问题 - 就像您遇到的那样。

您还使用了甚至不会 运行 的错误代码:"less-than-or-equal-to" 运算符是 <= 而不是 =<)。

试试这个:

If R <= 0.6 Then
    CL = "#32CD32"

(您还需要删除 FormatPercent 函数调用,否则会出现类型不匹配错误。)