取数组值

while(!rs.EOF){  
array.push(rs("FMouldNo"));   
for(var i=0;i<array.length;i++){  
$("#a tr").eq(i+1).find("td").eq(0).html(""+array[i]);  
}   
rs.MoveNext;  
}  
FMouldNo有A1,A2两条数据,为什么这样显示的是重复两条A2?


回复讨论(解决方案)

看看array里的值是什么

给出的代码不完整吧。。

function showMsg(){
        var objdbConn = new ActiveXObject("ADODB.Connection");    
        var strdsn = "Driver={SQL Server};SERVER=192.168.9.237;UID=erp;PWD=erp;DATABASE=TEST20151013CS"; 
        objdbConn.Open(strdsn);
        var array=new Array();
        var rs = new ActiveXObject("ADODB.Recordset");
var sql = "select FMouldNo from  t_MouldStandard";
        rs.Open(sql,objdbConn);
while(!rs.EOF){
array.push(rs("FMouldNo")); 
for(var i=0;i<array.length;i++){
$("#a tr").eq(i+1).find("td").eq(0).html(""+array[i]);

rs.MoveNext;

}

        objdbConn.Close(); // 关闭数据库链接  

看看array里的值是什么


我很奇怪,第一次while的时候 这是第一条记录的值,第二次while的时候 是第二条记录的,等push完数组之后就变成了两条
还请高手指教一下

给出的代码不完整吧。。



见3楼

rs("FMouldNo") 你这是一个对象类型的吧 而且while用的同一个对象?

rs("FMouldNo") 你这是一个对象类型的吧 而且while用的同一个对象?



FMouldNo这是一个列名,我只是想把查询出来这一列存进数组里

你push的时候,是把整个rs("FMouldNo")对象都push给array了吧。。。应该是将对应的值push给array才对吧 。。

array.push(JSON.parse(JSON.stringify(rs("FMouldNo")))); 试试先 如果对的话就自己深复制下

array.push(JSON.parse(JSON.stringify(rs("FMouldNo")))); 试试先 如果对的话就自己深复制下


显示的结果是这样的

你push的时候,是把整个rs("FMouldNo")对象都push给array了吧。。。应该是将对应的值push给array才对吧 。。



我的目的就是把这一整列都存进数组啊,如果数据很多怎么一个一个存进数组里呢


你push的时候,是把整个rs("FMouldNo")对象都push给array了吧。。。应该是将对应的值push给array才对吧 。。



我的目的就是把这一整列都存进数组啊,如果数据很多怎么一个一个存进数组里呢

如果是一整列都存进数组array=rs("FMouldNo"); 就好了吧,不需要push.

来源:itnose

上一篇: require'模块化jquery和angular问题

下一篇: 关于模板引擎二(Jade&&Mustache)

分享到: 更多