主题:  问个关于eval的问题

surfhere

职务:普通成员
等级:1
金币:1.0
发贴:195
注册:2002/3/6 14:23:39
#12003/5/20 18:55:56
我的HTML的JS里有这么一句话:
eval("main.select1.options[" + main.select1.options.length + "].selected")
但浏览器报错:
main.select1.options.4.selected不是对象
为什么"[]"会变成 "." ?
有什么办法解决吗?谢谢各位啦!



=ridincal=

职务:管理员
等级:7
金币:20.0
发贴:5886
注册:2004/1/13 11:47:04
#22003/5/21 8:44:11
用main.select1.options.length做main.select1.options的数组坐标显然是越界的,-1试试。



5D荣誉斑竹

职务:普通成员
等级:2
金币:10.0
发贴:622
注册:2001/10/21 13:06:17
#32003/5/21 9:57:34
数组下标从0开始,所以最后一个是options.length-1



surfhere

职务:普通成员
等级:1
金币:1.0
发贴:195
注册:2002/3/6 14:23:39
#42003/5/21 11:34:24
谢谢谢谢!
我改成
if (eval("main.select1.options[" + (main.select1.options.length-1) + "].selected") == true)
就OK啦 :)