复选框的输出

I_hui 2008-12-05 04:31:27


在数据库中有"爱好"这个字段中,存储的是选中的复选框值!如:(a,b,c,d,e....)这样
输出的时候我是用ASP这样写的!
<%
IF LEN(RS("爱好"))<> 0 THEN
STR=TRIM(RS("爱好"))
ARRY=SPLIT(STR,",")
FOR i=0 TO Ubound(ARRY)
RESPONSE.WRITE ARRY(i)
NEXT
END IF
%>
但是报了下面的错误。。。
Source line: FOR i=0 TO Ubound(ARRY)
Description: 循环控制变量 'for' 无效

希望哪位GG或是JJ 能帮我看看呐
...全文
90 点赞 收藏 14
写回复
14 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
I_hui 2009-01-31
确实是前面已经定于了一个 i 所以会报错。。
回复
layers2323 2008-12-06
因为前两天一老兄刚发了一帖,跟你一样的问题。
他最后把for g=0 to ……  的for 循环变量g给换了就ok了
所以建议你试试,可能i某些地方被定义过了。
回复
lobster_lshj 2008-12-05
我觉得可能是for里用的i的问题,换个名字试试
回复
LXHGDDY 2008-12-05
顶!!!
回复
virgo2008 2008-12-05

<%
rs="足球,篮球,游泳,乒乓球"
IF LEN(rs) <> 0 THEN
STR=TRIM(rs)
ARRY=SPLIT(STR,",")
FOR i=0 TO Ubound(ARRY)
RESPONSE.WRITE ARRY(i)
NEXT
END IF
%>

我这么写可以输出来的,你试试这个看看

<%
s=rs("爱好")
Response.Write s '测试s是否为空
IF LEN(s) <> 0 THEN
STR=TRIM(s)
ARRY=SPLIT(STR,",")
FOR i=0 TO Ubound(ARRY)
RESPONSE.WRITE ARRY(i)
NEXT
END IF
%>

回复
layers2323 2008-12-05
在那里写下:

for i=0 to 1
response.write i
next


这个有错吗?
如果有错,请更换变量i名称为其他。

回复
wangxiaoning868 2008-12-05
就是如果是-1就从定义数组的大小是1
回复
I_hui 2008-12-05

字段是英文的 也试了下 还是出错

再取数据之前加这条语句了啊
IF LEN(RS("爱好")) <> 0 THEN
。。。。

这条应该是过滤了 字段为空的情况啊
回复
I_hui 2008-12-05
[Quote=引用 5 楼 xxxxxxxxia 的回复:]
是不是数据库里面没有值
建议用split时顺便 做个判断
if ubound(ARRY)=-1 then redim ARRY(1)
[/Quote]
能解释一下 这条语句的含义吗?
回复
xxxxxxxxia 2008-12-05
是不是数据库里面没有值
建议用split时顺便 做个判断
if ubound(ARRY)=-1 then redim ARRY(1)
回复
I_hui 2008-12-05
Ubound(ARRY) 的值经测试输出是正确的

只要是用了FOR 这句,就会报错:
Source line: FOR i=0 TO Ubound(ARRY)
Description: 循环控制变量 'for' 无效
回复
layers2323 2008-12-05
response.write Ubound(ARRY)
look look
回复
virgo2008 2008-12-05
字段名字最好别用中文 ,试试英文看看!从你的代码看貌似没有问题!
回复
wangxiaoning868 2008-12-05
将Ubound(ARRY)的值输出一下看看是多少
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2008-12-05 04:31
社区公告
暂无公告