◆◆◆◆◆ 更新数据岛数据的问题
下面的代码, 实现数据岛排序。
1.得到数据岛数据
2.数据写入二维数组
3.二维数组排序
4.二维数据更新数据岛
第一次排序工作正常,第二次排序时,rs数据源的值都为null了。
问题应该是程序最后更新数据岛记录的问题。但不知为什么错。
望高人指点...............................
---------------------------
代码中不必要的代码用...代替,免得太杂,看不清。
/* 数据岛数据排序
*CellIndex 列号
*Type 排序类型 1递增,0递减
*dbgridid html中dbgrid的id
*/
function TSort(CellIndex,Type,dbgridid){
// 得到数据源
var rs = xmlData1.recordset;//xmlData1为xml的id,xml嵌在html内
// 创建二维数组aData,用于存储dbgrid数据
var aData = new Array(rs.recordcount);
for(var c=0; c<aData.length; c++){
aData[c] = new Array();
}
// xml数据岛数据写入二维数组aData
var i=0;
rs.movefirst();
while(!rs.eof){
for(var j=0; j<rs.fields.count; j++){
aData[i][j]=rs.fields(j).value;
}
rs.movenext();
i+=1;
}
// 开始排序
aData.sort(function(m,n){return ...});
// 更新数据岛记录
rs.movefirst();
for(var j=0; j<aData.length; j++){
for(var k=0; k<aData[0].length; k++){
rs.fields(k) = aData[j][k];
}
alert(rs.fields(3));//----------> 此处为null,错误!!
rs.Update();
rs.movenext();
}
// alert(aData[3][3]);// 此处值正常
}