判断语句不起作用。

来源:百度知道 编辑:UC知道 时间:2024/05/09 06:44:03
<%
if cint(len(sp_name))<1 then
Response.Write(rst_vod("js"))
elseif 1<cint(len(sp_name))<8 then
Response.Write(sp_name)
else
Response.Write("left(sp_name,8)&'...'")
end if
%>
判断没有报错,但是不起作用。其中的sp_name是变量。
大家帮忙看看问题出在哪。谢谢。

这段程序的执行结果是不是每次都输出sp_name的值?
因为你的1<cint(len(sp_name))<8判断条件是恒成立的
1<cint(len(sp_name))只能有两个结果true和false。这两个值同时也可以被作为1和0来与数字进行比较。所以1<cint(len(sp_name))<8就变成了0<8或者1<8,这个不等式显然是恒成立的,所以你的判断只能输出一个结果。

elseif 1<cint(len(sp_name))<8 then

应该改为:

elseif cint(len(sp_name))>1 and cint(len(sp_name))<8 then