经典的ASP如果语句问题
问题描述:
我有一个if语句,我很确定它是正确的,应该工作。但由于某种原因,事实并非如此。经典的ASP如果语句问题
while not oRs2.EOF
if iCat = oRs2("id") then
%>
<div class ="<%= oRs2("id") %><%= iCat %>">
<%
else
%>
<div class ="faqquestion <%= oRs2("id") %><%= iCat %>">
<%
end if
%>
这就是你得到的。
<div class="faqquestion 11">
<div class="faqquestion 21">
<div class="faqquestion 31">
,但它应该是什么
<div class="11">
<div class="faqquestion 21">
<div class="faqquestion 31">
不能看到什么我做错了,做1 = 1!?
如何变量被设置:
dim iCat
iCat = request.QueryString("cat")
dim sSQL
sSQL = "Select * from table"
set oRs2 = oConn.Execute(sSQL)
答
我认为这个问题是数据类型之一。
比如我测试下面的脚本(只取内容,并放入一个文件名为test.vbs,然后双击它:
dim i
i = "1"
dim j
j=1
if i = j then
msgbox "yes"
else
msgbox "no"
end if
msgbox i & j
这将输出“没有”和“11”。
在你的代码中ICAT将是一个字符串作为你只是从request.QueryString
拉它,试图将其转换为使用CInt
ICAT始终为1和ors2一个整数(“ID”)也含有1周第一次通过循环 – Beginner 2012-08-03 08:37:19
啊 - 我明白了,它有效吗?如果你让if语句微不足道?例如'if 1 = 1' – 2012-08-03 08:45:44
是的,我刚刚尝试过,并且正常工作 – Beginner 2012-08-03 08:47:14