回 帖 发 新 帖 刷新版面

主题:关于记录集赋值给数组问题

代码的主要目的是将记录集的内容赋值到数组中,如下:

<%//定义一个记录集
var pinzhong = Server.CreateObject("ADODB.Recordset");
pinzhong.ActiveConnection = MM_binghai_STRING;
pinzhong.Source = "SELECT * FROM pinzhong";
pinzhong.CursorType = 0;
pinzhong.CursorLocation = 2;
pinzhong.LockType = 1;
pinzhong.Open();
var pinzhong_numRows = 0;
%>

<%
//声明数组变量,将记录集赋值给数组
var ff=new Array()
ff=pinzhong.GetRows()
//获取数组一维和二维的上限
var aa=ff.ubound(1),bb=ff.ubound(2)
//在网页中输出数组中的内容
Response.Write(ff[2,1]+"<br>")
Response.Write(ff[2,2]+"<br>")
Response.Write(ff[2,3]+"<br>")
//在网页中输出数组的上限
Response.Write("数组的一维上限是:"+aa+"<br>")
Response.Write("数组的二维上限是:"+bb+"<br>")
%>

<%
pinzhong.Close();
%>

运行结果如下:

undefined
undefined
undefined
数组的一维上限是:2
数组的二维上限是:16

不明白:为什么三项数组内容都显示不正确,但上限都正确。晕!

回复列表 (共1个回复)

沙发

你的二维数组第一维上限是2,但在代码中应是ff[1,1]这个才是第二行,第二列的值,因为C#,JAVA,C,C++的数组都是以0为第一行,或第一列

所以输出时代码应写为:
Response.Write(ff[1,1]+"<br>")//ff数组的第二行,第二列的值再加换行标签<br>
Response.Write(ff[1,2]+"<br>")//ff数组的第二行,第三列的值再加换行标签<br>
Response.Write(ff[1,3]+"<br>")//ff数组的第二行,第四列的值再加换行标签<br>

我来回复

您尚未登录,请登录后再回复。点此登录或注册