预览加载中,请您耐心等待几秒...
1/3
2/3
3/3

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

javascript使用getrows()方法数组转换函数VBScript可以自动将getRows返回的值转换成一个二维数组,但JavaScript没有二维数组,我们只能通过toArray将其返回的值先转换成一维数组,然后再进行转换成类似VBScript的二维数组。我们先来分析下toArray后数组中的内容,有如下一张表(T_Users):idusernameuserpass1adminadmin8882dnawo66666使用toArray()后数组的内容如下:arr[0]=1arr[1]=adminarr[2]=admin888arr[3]=2arr[4]=dnawoarr[5]=66666下面我们来将它拆分成二维数组,我写了一个函数来实现:functionRecordToArray(oRs){if(typeof(oRs)=="object"){vararr=ors.getRows(-1).toArray();//用toArray转为数组vararr2=newArray();varcols=ors.fields.count;//列varrows=arr.length/cols;//行for(vari=0;icols;i++){arr2[i]=newArray();for(varj=0;jrows;j++){vark=rows*i+j;arr2[i][j]=arr[k];}}returnarr2;}else{return"";}}使用举例:%try{varconn=newActiveXObject("ADODB.Connection");varrs=newActiveXObject("ADODB.RecordSet");conn.connectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+Server.MapPath("db1.mdb");conn.open();}catch(e){Response.write("数据库连接出错!");Response.End();}rs.open("T_Users",conn,1,1);if(!rs.eof){vararr=newArray();arr=RecordToArray(rs);}rs.closers=null;conn.close;conn=null;%sciptlanguage="JScript"runat="server"//codebyxujiwei//http://www.xujiwei.cn///定义变量varconn,rs,vdata,data,recN,i;//连接数据库conn=Server.CreateObject("ADODB.Connection");conn.Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+Server.MapPath("data.mdb"));//获取记录集rs=conn.Execute("SELECTid,first,secondFROMtest");//获取数据数组,并转换成为JScript中可用的数组类型vdata=rs.GetRows().toArray();//获取数据表的字段数i=rs.Fields.Count;//关闭记录集,释放对象rs.Close();rs=null;//转换数组data=transArray(vdata,i);//获取记录数recN=data.length;//循环输出数据for(i=0;irecN;i++){//注意,数组下标从0开始//显示数据库中数据Response.Write("ID:"+data[i][0]+",First:"+data[i][1]+",Second:"+data[i][2]+"br/");}//关闭数据库连接,释放对象conn.Close();conn=null;//数组转换函数//byxujiwei//参数:arr-GetRows方法得到的对象用toArray方法得到的数组//fieldslen-数据表字段数functiontransArray(arr,fieldslen){varlen=arr.length/fieldslen,data=[],sp;for(vari=0;ilen;i++){data[i]=newArray();sp=i*fieldslen;for(varj=0;jfieldslen;j++)data[i][j]=arr[sp+j];}returndata;}/scrpt