javascript的数组获得数据库里的值,为何不能用呢??
<%@LANGUAGE= "JAVASCRIPT "   CODEPAGE= "936 "%>    
  <% 
 var   total=new   Array(6); 
 var   i=0,sum=0;   
 var   rs1=   Server.CreateObject( "ADODB.RecordSet "); 
 var   str   =    "Provider   =   Microsoft.Jet.OLEDB.4.0;Data   Source=    "+Server.MapPath( "tp.mdb "); 
 var   Conn=Server.CreateObject( "ADODB.Connection "); 
 Conn.Open(str); 
 var   sql= "select   *   from   tbltp "; 
 rs1.Open(sql,Conn,3,3); 
 while(!rs1.EOF){ 
 	sum=sum+rs1( "record "); 
 	total[i]=rs1( "record "); 
 	Response.Write(i) 
 	Response.Write(total[i]+ " <br/>  "); 
 	i=i+1; 
 	rs1.MoveNext; 
 	} 
 	Response.Write(i); 
 //	Response.Write(total[0]);      //注释1  	 
 rs1.Close;   
 %>  
  <%=sum%>       //非注释1 
 // <%=totla[1]%>       //注释2 
 -------------------------- 
 1,上面这段程序如果用“非注释1”则可以输出sum的值。 
 2,如果用“注释1”这个输出,则出现错误: 
 Error   Type: 
 ADODB.Field   (0x80020009) 
 Either   BOF   or   EOF   is   True,   or   the   current   record   has   been   deleted.   Requested   operation   requires   a   current   record. 
 3,如果用“注释2”这句,则出现错误: 
 Error   Type: 
 ADODB.Field   (0x80020009) 
 Object   is   no   longer   valid. 
 --------------- 
 1,我的数据库中只有四条纪录,所以我在数组的声明中   Array(n)   的n   测试过用大一点的都不行。 
 2,我在while循环中试着打出   i   和   total   的各个值都是没有问题的,i   是从0到3的,而且total[0]   到   total[3]的值是我要的各条纪录的值。   
 但是为何total的数组到了while循环外就打不出来了呢?而sum值却没问题!!!   
 谢谢救命啊~~~!~!~!~!
------解决方案--------------------total[i]=rs1( "record ")+ " "; 
------解决方案--------------------很简单...   
 rs1( "record ") 属于 对象... 
 对象都是按引用的...   
 在 rs1.Close; 后. 
 rs1 的所有东西就被你 null 了   
 之后再引用当然是空了...   
 原字串都是按值的, 比如 字串, 数字...   
 rs1( "record ")+ " " 是把对象转换为字串..