第二种简单点,直接修改代码,将d_time_arr = Split(d_time_text,"-")改成d_time_arr = Split(d_time_text,"/") 以上,成功解决了“Microsoft VBScript 运行时错误 '800a0009' 下标越界: '[number: 1]' ”的问题。
这句里下标越界: '[number: 1]' ,就说明应该是singlePlayData(1)的下标越界,也就是singlePlayData()数组有问题。楼主你把playDataArray(i)的值与Ubound(singlePlayData)的值用response.write显示看看,是不是有问题,playDataArray(i)里面有不有"$$"字符。
1.检查 request("demo")是不是数组 2.如果是数组,检查下标对不对
tempstr是数组,如果tempstr的长度小于i,则出现“数组下标越界”的错误 如果tempstr(i)按“|”拆分的数组长度小于2,则也会出现“数组下标越界”的错误
错误提示已经说得很清楚了,下标越界了,说明你的m_setUserEditor数组元素少于14个.先判断一下就可以了.<%If UBound(m_setUserEditor)>=14 Then%><%If m_setUserEditor(14) = 0 Then Response.Write (" checked") : End If%>> 否
已经告诉你下标越界了,表示程序生成时认为后面还有一篇文章,然而却没有。原因一:你程序写得不完整,只是简单情况下可以用,如果提交字符串非正常就会出错。需要修改程序,自己改。原因二:你“剩女保镖”这个文章里或它的下一篇文章里的内容肯定用到了一些特殊字符之类。 自己检查。
)中的数据至少有二个/组成,这样才能通过SPLIT函数分解成至少有3个元素的数组.如果不能得到3个元素的数组,那么就会报错,下标越界.记住,下标是从0开始的.你现在改了后正常,说明原来只产生了两个元素,也就是filename_arrly(0)和filename_arrly(1).而原代码错误地引用了filename_arrly(2)了....
每次使用split函数分割字符串成为数组后,都要判断一下数组的下标上限(即UBound,而下限LBound则是恒为0的),如果是在指定范围内才继续执行,否则就退出或提醒用户。比如:y=split(x(i),"$$")If UBound(y) = 1 Then z=getPlayerIntroOnCache("play",y(0)) ... ...Else MsgB...
下标越界: '[number: 0]' 的错误,你需要检查下:playurlArray=split(playurl,span1) 这句代码是不是正确分割开字符串并返回数组 playurlLen=ubound(playurlArray) 检查playurlLen的值是不是得到预想中的正确结果
所以第9行出现了下标越界的错误,表示Agent这个阵列并没有Agent(1)这个元素,也就是只有Agent(0)这个元素,也就表示第五行读取到的Agent字符串要嘛是空字符串,要嘛是不包含";"的字符串。要避免错误,只需要在第9行的判断式前,加上一个判别式:if UBound(Agent) > 0 then if Instr(Agent(1),...