java js渲染_(JS):求教前台页面JS渲染Table的优化方法

(JS高手请进):求教前台页面JS渲染Table的优化方法

前台页面显示一个若干行列的Table,行列数由后台服务器传递的总记录来计算,通过Firebug可以查看到数据传授到前后至正常显示Table的这段时间很长,用户估计等不及,所以我认为JS的代码有很大的优化空间,请教这里的JS高手,怎么优化这段js代码.页面需要easyUI的Slider控件!

function renderTable(rsp) {

var count =rsp.length ;//总记录数

var rows = 20;

var cols = Math.ceil(count / rows);

var str = '

str += '

';

for (var i = 0; i 

str += '

列名1列名2';

}

str += '

';

for (var i = 0; i 

str += '

';

for (var j = 0 + i; j 

str += '

' + rsp[j].Age+ '';

}

str += '

';

}

str += '

';

$('.divTable').append(str);

$('.easyui-slider').slider({

showTip: true,

min: 0,

max: 150,

step: 1,

tipFormatter: function (value) {

return value + '岁';

}

});

//table渲染css

$("tr").not(':first').hover(

function () {

$(this).css("background", "red");

},

function () {

$(this).css("background", "");

});

$.parser.parse($('#frmName'));

}

优化

firebug

easyUI

------解决方案--------------------

1 你数据太多,用什么方法都卡,考虑分页,或分步载

2 .hover 事件邦定改成live 用事件委托

3. 拼接str改成 var strs=[] ;strs.push(..) 用数组

------解决方案--------------------

引用:谢谢回复,另外C#中的字符串拼接String.Join和String.Concat要比+=效率高,JS中是否有这样的函数?

引用:可以考虑先把 $('

然后在循环体中创建 $("

...") append 到 t……

你可以声明一个数组来保存数据,把+=的操作换成数组的push(),最后append()的时候,join("")一下。

var str = [];

str.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值