经典 ASP:不合逻辑的 If 语句结果
Classic ASP: Illogical If Statement Result
response.Write("CurPage=" & CurPage & "<br />")
response.Write("iNumPages=" & iNumPages)
if CurPage < iNumPages then
response.Write("in correct part")
writepagebar = sStr & sLink & CurPage + 1 & """ rel=""next"">" _
& snext & "</a> " & sLink & iNumPages & """><span class=""pagebarquo""" _
& " style=""font-family:Verdana;font-weight:bold"">»</span></a>"
else
response.Write("in bad part")
writepagebar = sStr & " " & snext & " <span class=""pagebarquo""" _
& " style=""font-family:Verdana;font-weight:bold"">»</span>"
end if
这里有什么问题?正在打印
CurPage=11
iNumPages=52
所以它应该进入正确的部分...但是它进入了错误的部分。
我正在尝试使 Next 单词成为超 link...
可能 CurPage
正在评估为 String
。
由于 VBScript 中的 "11" < 52
等表达式可能有 False
return 值,因此在比较数字变量之前,您应该确保其数据类型也是数字,而不是字符串。
这将如您所愿。
if CLng(CurPage) < CLng(iNumPages) then
'correct part
else
'bad part
end if
response.Write("CurPage=" & CurPage & "<br />")
response.Write("iNumPages=" & iNumPages)
if CurPage < iNumPages then
response.Write("in correct part")
writepagebar = sStr & sLink & CurPage + 1 & """ rel=""next"">" _
& snext & "</a> " & sLink & iNumPages & """><span class=""pagebarquo""" _
& " style=""font-family:Verdana;font-weight:bold"">»</span></a>"
else
response.Write("in bad part")
writepagebar = sStr & " " & snext & " <span class=""pagebarquo""" _
& " style=""font-family:Verdana;font-weight:bold"">»</span>"
end if
这里有什么问题?正在打印
CurPage=11
iNumPages=52
所以它应该进入正确的部分...但是它进入了错误的部分。
我正在尝试使 Next 单词成为超 link...
可能 CurPage
正在评估为 String
。
由于 VBScript 中的 "11" < 52
等表达式可能有 False
return 值,因此在比较数字变量之前,您应该确保其数据类型也是数字,而不是字符串。
这将如您所愿。
if CLng(CurPage) < CLng(iNumPages) then
'correct part
else
'bad part
end if