可能是list里边没有添加值,我就代码简单模拟了一下:<!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title>test</title> </head> <body> <script type="text/javascript"> var gongSi = { uuid : "", name : "" }; function getDb() { var list = new Array(); gongSi.uuid = '1'; gongSi.name = 'Fields'; list.push(gongSi) list.push({ uuid : '1', name : 'jikey'}) list.push({ uuid : '2', name : 'jikey2'}) return list; } function infoList() { var list = new Array(); list = getDb(); if (list.length > 0) { for (var i = 0; i < list.length; i++) { alert(list[i].name);//出错,这里怎么取值? } } } infoList() </script> </body> </html>
按你说的这个方法的确可以; 我又检查了我的代码,增加了类型转换,ok了//最后的修改版本 while(!rs.EOF){ gongSi.uuid=String(rs.Fields("uuid"));//转换string gongSi.name=String(rs.Fields("name"));//转换string list.push(gongSi); rs.moveNext(); } //放入数据没问题了,输出时遇到了问题 function infoList(){ var list = new Array(); list=getDb();
var list = new Array();
list=getDb();
if(list.length>0){
for(var i=0;i<list.length;i++){
gongSi= list[i];
alert(gongSi.name);//这样也不行,这里怎么取值?
}
}
}
<html>
<head>
<meta charset="utf-8"/>
<title>test</title>
</head>
<body>
<script type="text/javascript">
var gongSi = {
uuid : "",
name : ""
}; function getDb() {
var list = new Array();
gongSi.uuid = '1';
gongSi.name = 'Fields';
list.push(gongSi)
list.push({ uuid : '1', name : 'jikey'})
list.push({ uuid : '2', name : 'jikey2'})
return list;
} function infoList() {
var list = new Array();
list = getDb(); if (list.length > 0) {
for (var i = 0; i < list.length; i++) {
alert(list[i].name);//出错,这里怎么取值?
}
}
} infoList()
</script>
</body>
</html>
按你说的这个方法的确可以;
我又检查了我的代码,增加了类型转换,ok了//最后的修改版本
while(!rs.EOF){
gongSi.uuid=String(rs.Fields("uuid"));//转换string
gongSi.name=String(rs.Fields("name"));//转换string
list.push(gongSi);
rs.moveNext();
}
//放入数据没问题了,输出时遇到了问题
function infoList(){
var list = new Array();
list=getDb();
if(list.length>0){
for(var i=0;i<list.length;i++){
alert(list[i].name);//这里虽然能够正常输出了,但是却发现输出的值都一样,都最后push的那条数据,我在push时alert了,看了push进去的的数据没错
}
}
}