Asp classic 经典ASP:使用If语句时选择空
我有一段简单的代码,用于填充db表中的select对象。我想选中一个值以将条目设置为选中,但当我选中一个db值时,我会得到一个空的选择框。此代码生成空框:Asp classic 经典ASP:使用If语句时选择空,asp-classic,Asp Classic,我有一段简单的代码,用于填充db表中的select对象。我想选中一个值以将条目设置为选中,但当我选中一个db值时,我会得到一个空的选择框。此代码生成空框: response.write "<td><select name='FromDept'>" Do While not rs.eof If rs("DeptID") = 61 Then response.write "<option value=" & rs("DeptID") &am
response.write "<td><select name='FromDept'>"
Do While not rs.eof
If rs("DeptID") = 61 Then
response.write "<option value=" & rs("DeptID") & " selected>" & rs("DeptName") & "</option>"
Else
response.write "<option value=" & rs("DeptID") & ">" & rs("DeptName") & "</option>"
End If
rs.MoveNext
Loop
rs.close
response.write "</select></td>"
response.write“”
做而不做
如果rs(“DeptID”)=61,则
response.write“”&rs(“DeptName”)和“”
其他的
response.write“”&rs(“DeptName”)和“”
如果结束
下一个
环
克洛斯
响应。写入“”
但是,此代码会生成一个包含以下值的选择框:
response.write "<td><select name='FromDept'>"
LpCnt = 0
Do While not rs.eof
If LpCnt = 9 Then
response.write "<option value=" & rs("DeptID") & " selected>" & rs("DeptName") & "</option>"
Else
response.write "<option value=" & rs("DeptID") & ">" & rs("DeptName") & "</option>"
End If
rs.MoveNext
LpCnt = LpCnt + 1
Loop
rs.close
response.write "</select></td>"
response.write“”
LpCnt=0
做而不做
如果LpCnt=9,则
response.write“”&rs(“DeptName”)和“”
其他的
response.write“”&rs(“DeptName”)和“”
如果结束
下一个
LpCnt=LpCnt+1
环
克洛斯
响应。写入“”
谢谢你的帮助 将值分配给临时变量:
response.write "<td><select name='FromDept'>"
Do While not rs.eof
dept = rs("DeptID")
If dept = 61 Then
response.write "<option value=" & dept & " selected>" & rs("DeptName") & "</option>"
...
response.write“”
做而不做
部门=卢比(“部门”)
如果dept=61,则
response.write“”&rs(“DeptName”)和“”
...
空下拉列表意味着您在该语句中遇到错误,它很可能被忽略,原因是在错误恢复下一行时出现了
首先,在“下一行”中删除错误恢复时的
第二,这种代码中的错误意味着类型转换问题。请尝试以下代码:
Dim curDeptID
Do While not rs.eof
curDeptID = 0
If Not IsNull(rs("DeptID")) Then
curDeptID = CLng(CStr(rs("DeptID")))
End If
If curDeptID=61 Then
response.write "<option value=" & rs("DeptID") & " selected>" & rs("DeptName") & "</option>"
Else
response.write "<option value=" & rs("DeptID") & ">" & rs("DeptName") & "</option>"
End If
rs.MoveNext
Loop
Dim curDeptID
做而不做
curDeptID=0
如果不为空(rs(“DeptID”)),则
curDeptID=CLng(CStr(rs(“DeptID”))
如果结束
如果curDeptID=61,则
response.write“”&rs(“DeptName”)和“”
其他的
response.write“”&rs(“DeptName”)和“”
如果结束
下一个
环
看这里-