使用JSON2.js
jsonText ="";
for(var i=0;i<treeNodes.length;i++){
if(treeNodes.length ==1 || i== treeNodes.length-1){
jsonText += {"id":1, "pId":0, name:"北京"};
}else{
jsonText += {"id":2, "pId":0, name:"北京"}+",";
}
}
zNodes = eval("("+jsonText +")");
alert(zNodes);
报缺少“]”,于是我初始化jsonText ="["
结尾时 jsonText +="]";
还是报了缺少“]”
检查下上下文吧,这里好像没错误。
检查下treeNodes的内容以及其它地方是否有语法错误
再试试:
eval("zNodes =("+jsonText +")");
字符串最后的内容应该是这样:
jsonText="{message:[{{id:'1', pId:'0', name:'北京'},{},{},....]}";
zNodes = eval("("+jsonText +")");
上面错了,多了一个{,应该是下面
jsonText="{message:[{id:'1', pId:'0', name:'北京'},{},{},....]}";
for(var i=0;i<3;i++){
jsonText = [{id:"1",pId:"0",name:"北京"}];
}
alert(JSON.stringify(jsonText));
zNodes =eval("("+jsonText+")");
你的jsonText格式不对
var jsonText="{message:[{id:'1', pId:'0', name:'北京'},{id:'2', pId:'0', name:'北京'},{id:'3', pId:'0', name:'北京'}]}";
zNodes = eval("("+jsonText +")");
或
eval("zNodes =("+jsonText +")");
都能行