关于ASP中IF语句的执行顺序

我的一个程序大概是这样:iftrim(request("B"))="添加"thenIFAThenstr="Aerror!"''''''A,B,C是代表条件表达式IFBTh... 我的一个程序大概是这样:
if trim(request("B"))="添加" then
IF A Then str="Aerror!" ''''''A,B,C是代表条件表达式
IF B Then str="Berror!"
IF C Then str="Cerror!"

IF str<>"" Then
call ErrMsg()
els
sql="insert int......."
.......
end if
End IF

在运行的时候,如果ABC都满足的时候,总是先弹出C的报错提示框(就是让人感觉先执行判断C的IF语句了),如果C不符合,又是先判断B,而不是先判断A,请问这是怎么回事?为什么不按照首先检测A,弹出Aerror的提示框?
1楼的,在asp中then后的语句平行写,是不需要end if的。

我主要迷惑的是三个if语句为什么会倒着执行,而不是顺序执行,是不是编译的时候做了优化导致的?我的程序在运行的时候是没有问题的。
展开
 我来答
arvy_momo
2010-11-12 · TA获得超过2350个赞
知道大有可为答主
回答量:1552
采纳率:50%
帮助的人:993万
展开全部
ABC三个是平等判断的,没有先后顺序。
建议写法用Select Case,

这种三个IF平行的话,是不是可以这么想,程序一定会执行三次,最后判断的是IF C...
所以显示C报错并不是最先,而是最后判断的...
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
情感家庭小导师
2010-11-12 · TA获得超过449个赞
知道小有建树答主
回答量:807
采纳率:0%
帮助的人:246万
展开全部
你用了四个 if 语句 加上一个else 语句 但是你只用end if 两个 自己看看怎么做调整吧

或者你if 里面直接用switch语句也行呀
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式