VBScript没有超过if语句
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VBScript没有超过if语句相关的知识,希望对你有一定的参考价值。
我有一个简单的VBScript
,它从数据库中获取数据并迭代它们并生成一个表。在此迭代期间,我想捕获一些数据(特定列的值)并将它们保存在变量中供以后使用。但是每当我的代码到达那个if
语句时,它就不再循环了。
Dim lats
Dim longs
Set lats = CreateObject("System.Collections.ArrayList")
Set longs = CreateObject("System.Collections.ArrayList")
%>
<table>
<tr><th>Office</th><th>Address</th><th>Comune</th><th>Province</th><th>Lat</th><th>Long</th><th>2G</th><th>3G</th><th>4G</th></tr>
<%do until rs.EOF
response.write("<tr>")
for each x in rs.Fields
response.write("<td>" & response.write(x.value) &"</td>")
'IF the below statement equals true, the loop doesn't perform anymore
If x.name = "SITE_LAT_N" Then
lats.Add x.value
ElseIf x.name = "SITE_LON_E" Then
longs(indx) = x.value
End If
next
rs.MoveNext
response.write("</tr>")
loop
rs.close
conn.close
%>
</table>
答案
longs(indx) = x.value
看起来很腥。证据:
>> set al = CreateObject("System.Collections.ArrayList")
>> al.Add "works"
>> WScript.echo al(0)
>> al(1) = "doesn't work"
>>
works
Error Number: -2146233086
Error Description: Der Index lag außerhalb des Bereichs. Er muss nicht negativ und kleiner als die Auflistung sein.
Parametername: index
另外:indx
来自哪里?你不能用
longs.add x.value
以上是关于VBScript没有超过if语句的主要内容,如果未能解决你的问题,请参考以下文章
vbscript 如果另一个返回变量不可为空,则VB.NET可空整数通过if语句可能没有任何结果= 0。
vbscript 各种自定义代码片段 - 有关详细信息,请参阅注释