我从数据库中取出记录按要求转换成而为数组后 最后加上该行程序var storee=new Ext.data.SimpleStore({data:dataa,fields:["id","name","organization","homepage"]});
其中dataa就是我转换后的二维数组 可是老是报错说undefined未定义或者为空 dataa我转换后的值为[[1,'aa','bb'],[2,'ss','dd']]
这是怎么回事啊 纠结搞了一下午!
[b]问题补充:[/b]
不是的啊 和这没关系 我都试了的!
[b]问题补充:[/b]
我如果手动定义一个二维数组 却是没有问题的 哎 纠结啊
[b]问题补充:[/b]
ROwEN
我在var storee=new Ext.data.SimpleStore({data:dataa,fields:["id","name","organization","homepage"]});
这行程序前加了一个alert(dataa),他执行了的 也是一个二维数组了 这样应该表示他已经加载了吧 因为程序是顺序执行的嘛
[b]问题补充:[/b]
我想问rowen你遇到这种问题是怎么解决的啊 能给个方法吗
[b]问题补充:[/b]
var date2="";
<%
for(addBI add:list){
%>
var date ="[" + '"<%=add.getLmbh()%>"' + "," + '"<%=add.getLjbh()%>"' +"," + '"<%=add.getLjmc()%>"' +","+ '"查看BI"' +"]" +"," ;
date2=date2+date;
<%
}
%>
var datee="["+date2+"]";
那个循环可以不用看 是用hibernate作的
[b]问题补充:[/b]
是我不小心写错的 var dataa="["+date2+"]"; 我实在找不出什么原因 哎!谢谢你们啦
[b]问题补充:[/b]
我把输出的东西发给大家看看 呵呵 谢谢啦 照片我以上传
[b]问题补充:[/b]
好的 我贴代码吧 可能有点乱 我本身不是做代码的 是做数据仓库的 最近要用EXT写点东西 只有亲自出马啦 呵呵 谢谢大家啦!
<script>
var date2="";
<%
for(addBI add:list){%>
var date ="[" + '"<%=add.getLmbh()%>"' + "," + '"<%=add.getLjbh()%>"' +"," + "," + '"查看BI"' +"]" +"," ;
date2=date2+date;
<%}%>
[color=red]function replacePos(strObj, pos, replacetext)
{
var str = strObj.substr(0, pos-1) + replacetext + strObj.substring(pos, strObj.length);
return str;
}//这个函数是处理数据库中取出数据最后一个逗号的 不用管
date2 = replacePos(date2, date2.length,"");[/color]
var datee="["+date2+"]";
aaa();//把表格展现放在函数里面,调用该函数
function aaa(){
var dataa=datee
alert(datee);
var storee=new Ext.data.SimpleStore({data:dataa,fields:["lmbh","ljbh","ljmc"]});//转换成EXT支持的数据类型
alert("aaaa");//程序到这正好就不会执行了!如果换成手动定义的数组则会执行以下代码!
var grid = new Ext.grid.GridPanel({ //创建一个表格
renderTo:"BiManage",
title:"门户项目开发团队",
height:150,
width:600,
columns:[{header:"栏目编号",dataIndex:"lmbh",sortable:true},
{header:"链接编号",dataIndex:"ljbh",sortable:true},
{header:"链接名称",dataIndex:"ljmc"},{header:"查看BI",dataIndex:"lookBi"}],
store:storee,
autoExpandColumn:2
});
}
[b]问题补充:[/b]
非常感谢 大家 问题解决了!问题的答案就是JIM.JIN所说的 把函数改成
var datee=eval("["+date2+"]");这样就可以了 谢谢大家