我制作了一个电子表格 示例图片 http://www.jqwidgets.com/wp-content/uploads/2012/08/jquery-spreadsheet.png
这是我的总数据(3974行)(我正在使用权利Mvc 4 c#/ framework 4.5存储过程)没有连接单表而且我使用LOCALHOST)mssql 2014 express 但我很等待(只有html创建)没有数据(avarage 2分钟只加载)当我点击单元格(输入)等待8秒
3.794行来自服务器只有html创建缓慢
如何加快速度?如果不可能.. 或者你能推荐我一个电子表格吗? 或客户端缓存或mvc数据缓存哪些有用? 谢谢
function GridEstimation() {
var estimationModel = GetEstimations(); 3.974 ROWS
var GridEstimation = document.getElementById('GridEstimation');
var dynamicNav = "";
if (estimationModel != "undefined") {
dynamicNav += '<div class="table-wrapper">';
dynamicNav += '<div class="table-scroll">';
dynamicNav += '<table class="tftable" border="1">';
24船只行
dynamicNav += '<tr>'
dynamicNav += '<th>Invoice Item</th>'
for (var i = 0; i < estimationModel.Vessels.length; i++) {
dynamicNav += '<th id=' + estimationModel.Vessels[i].VesselID + '>' + estimationModel.Vessels[i].VesselName + '</th>'
}
dynamicNav += '</tr>'
158项目(股票)行
for (var m = 0; m < estimationModel.Items.length; m++) {
dynamicNav += '<tr>';
dynamicNav += '<td>' + estimationModel.Items[m].InvoiceItemName + '</td>';
3.792 CELL INPUT ROWS
for (var n = 0; n < estimationModel.Estimations.length; n++) {
dynamicNav += '<div><input type="text" id=' + estimationModel.Estimations[n].EstimationID + '/></div>';
}
dynamicNav += '</tr>'
}
dynamicNav += '</tr>'
dynamicNav += '</table>'
dynamicNav += '</div>';
dynamicNav += '</div>';
}
$("#GridEstimation").append(dynamicNav);
}
答案 0 :(得分:0)
其中一个原因是,这可能会非常缓慢,因为您可能会创建一个大的HTML字符串并将其逐个连接起来。以下示例可以极大地改善http://www.codeproject.com/Articles/12375/JavaScript-StringBuilder。
然后更好的方法是逐步(在while循环中)呈现HTML,而不是一次性在一个巨大的HTML字符串中。