当前位置: 代码迷 >> J2EE >> 关于js解析json的有关问题
  详细解决方案

关于js解析json的有关问题

热度:41   发布时间:2016-04-17 23:13:56.0
关于js解析json的问题
我的json是个list,我想把它解析出来放到table里面,但是总是出现这种情况:我解析的js代码是:
function AjaxText(index){
$.ajax({
url : "findAction.action",
type : "post",
dataType : "json",
data : {
"index" : index
},
success :  function(data){alert("接受成功");studentlist(data);}
});
}

function studentlist(data){
 //获取后台传过来的jsonData,并进行解析
 alert("------->进入当前的数据展现");
 var dataArray = $.parseJSON(data.jsonData);
 //此处需要让其动态的生成一个table并填充数据
 var tableStr = "<table>";
 tableStr = tableStr + "<tr><td>学号</td><td>姓名</td><td>性别</td></thead>";
 alert(str);
 var len = dataArray.length;
 for(var i=0 ;i<len ; i++){
  tableStr = tableStr + "<tr><td>"+ dataArray[i].studentId +"</td>"+"<td>"+dataArray[i].studentName + "</td>"+"<td>"+dataArray[i].studentSex +"</td></tr>";
 }
 tableStr = tableStr + "</table>";
 //将动态生成的table添加的事先隐藏的div中.
 alert(str);
 $("#dataTable").html(tableStr);   
 }

htmi中的一个div:<div id="dataTable"></div>  
设置断点是“------->进入当前的数据展现”可以弹框输出,但是 alert(str);不可以
大神们这个怎么改啊?
------解决思路----------------------
你想弹出的这个str变量在哪里定义的,没有看到。
------解决思路----------------------
什么时候触发的你没说清楚吧
------解决思路----------------------
如果明确知道了data.jsonData是数组类型的格式,那么可以使用eval函数转换为array对象撒。
var dataArray = eval('('+data.jsonData+')');

另外,你的str变量在哪里定义的?
------解决思路----------------------
jQuery.each(json, function(i, item) {...这里?