项目改版,用到jqueryEasyUI.
后台权限json树写好之后,前台一直出不来。
但是直接用数据文件,却可以,但也是慢。
思考半天查了半天,最后发现前台js遍历json时,没有加入datatype格式。
悲剧的形成---js通过便利json出来的树,可是datatye没加入json格式,就用了字符串的长度,来遍历。字符长为20000+,就循环20000+次。
还有一种解决方法,在后台程序里写入response.setContentType("text/json;charset=UTF-8"),然后再返回。
浏览器不死也怪。
调整后,只循环8次。
问题解决,但值得深思。
对新事物,api要常看,对于循环慢的,一定要先看循环的长度。
//权限树
function permissions(){
// ../../menu/commonMenuList.action
//../../common/json/test.json
$.ajax({
url: "../../menu/commonMenuList.action",
cache: false,
dataType:"json", success: function(data){
console.info(data.length);
for (var i = 0;i < data.length; i++){
var aaa=i+1;//创建伸缩面板,id名字为abc加id号,id号比i下标多一个,是为了以后用ul的id号对应data下标值为整数
$('#tree_top').accordion('add',{
title:data[i].text,
content:'<div style="padding:10px"><ul id="abc'+aaa+'"></ul></div>'
});
//第一次创建的ul是拿不到值的,所以第二次在拿,所以i>0,第二次对应的ul还是创建的第一个,拿第一个数据,
if(i>0){//第一次第一个伸缩面板的id取不到,第二次开始取第一个伸缩面板的id给赋值上第一次的数据 data[i-1]
$("#abc"+i).tree({
animate:false,
lines:true,
onClick:function(node){
}
});
$("#abc"+i).tree('loadData', data[i-1].children);
}
//因为i<data.length,所以"#abc"+i拿不到最后一个,最后一个要用"#abc"+aaa拿,然后得给他创建一个ul才能拿到,
//所以就先增加了一个,在消灭一个,到这里就结束了,break;----->over
if(aaa==data.length){
$('#tree_top').accordion('add',{
title:'gdgd',
content:'<div style="padding:10px"><ul id="dgdg"></ul></div>'
});
$("#abc"+aaa).tree({ //获得最后一个伸缩面板的id
animate:false,
lines:true,
onClick:function(node){
}
});
$("#abc"+aaa).tree('loadData', data[i].children);//最后一次加载最后一次数据
$('#tree_top').accordion('remove',aaa);
return false;
}
}
}
});
}
分享到:
相关推荐
一个Sqrt函数引发的血案-博文代码 博文地址:
编程趣谈:一个Sqrt函数引发的血案参考.pdf
一个脚本引发的血案.docx
第002章 一个输入框引发的血案.rarpython面试
一次理发引发的血案250字三年级作文范例.pdf
sql学习 全局临时表案例1_统计信息引发性能血案.sql
一台电脑引发的血案作文【初中初二500字】.docx
子网掩码的注意事项,由掩码地址设置不当,引发的血案(网络访问故障)
工程师故事,晶振引发的系列血案
一条SQL引发的“血案”:与SQL优化相关的4个案例.docx
古代汉语02-7.1 一个奇葩名字引发的血案:《左传》郑伯克段于鄢解题_28.pptx
主要介绍了Nginx正确的404配置方法,本文根据实际案例总结而来,可以说是一个等号引发的血案!需要的朋友可以参考下
防不胜防:一个空格在数据库里可能引发的N重血案.pdf
一条SQL引发的“血案”:与SQL优化相关的个案例(文末送书).docx
一个“玩笑”引发的“血案”--就“欧典危机”答《成功营销》 管理资料.doc
直接切入正题吧: 通常来说,我们看到的慢查询一般还不致于导致挂站,顶多是应用响应变慢 不过这个恰好被我撞见了,一个慢查询把整个网站搞挂了 先看看这个SQL张撒样子: # Query_time: 70.472013 Lock_...
到现在还记得当年广大观众调侃吐槽冯小刚的夜宴时网上比较火的一个视频——一个馒头引发的“血案”(估计现在90后00后没看过这个,当时师弟师妹们还在初高中为考大学做准备呢,应该没有机会看个电影啥的,不过也不...
主要给大家介绍了一起因MySQL时间戳精度引发的血案的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用MySQL具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
主要给大家介绍了关于MySQL中因一个双引号错位引发的血案的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧