HTML页面花费太多时间加载和页面变得无法响应

时间:2012-09-22 10:39:05

标签: javascript html jsp

我的网页花费了太多时间来加载。 原因是该页面有一个HTML表格,其中有大约3000列,每列都有一个文本框。 有没有办法让我可以减少加载时间或建议是否还有其他选择。

提前致谢

编辑 - 好的,让我告诉你确切的senerio,我的表需要显示日期明智的数据和日期(如2012年12月14日)将是列标题本身。最新的日期将是第一列,然后过去的日期将会发生,有些事情(2012年12月14日| 2012年12月13日| 12月12日......)每天系统日期发生变化将添加一个新列作为第一列。大约有200行。 它是一个JSP页面,在for循环中我首先创建表头,然后在第二个for循环创建包含textbox中值的表格单元格(这样用户可以随时编辑它们)。

代码示例 - 标题 -

<%
    Date today = new Date();
    String col = "";
    today = RDUtils.addDays(today, 1);
for(int i=0;i<=columnCount;i++){
    today = RDUtils.addDays(today, -1);
    col = RDUtils.getStringDateCol(today);
%>
<th class="TableHeader"><div><%=col%></div></th>
<%} %>

表格单元格 -

for(int j=0;j<=columnCount;j++){%>
    <input maxlength="5" onblur="fillZero(this);" onFocus='clearField(this);' onkeypress="if (checkEnter())return false;" onkeyup='if (checkEnter()) move("<%=i %>");' size="5" type="text" name="txtEntry<%=de.getId()%>" value="<%=val%>" id="<%=de.getId()%>"/></div> </td>

JS函数 -

function checkEnter(e){
    characterCode = e.keyCode;
    return characterCode == 13;
}
function fillZero(obj){
if(obj.value==''){
    obj.value = 0;
}
 }
 function clearField(obj){
var perfix = obj.name.substring(8, obj.name.length);
var chkObj = document.getElementById('deCheck'+perfix);
if(!chkObj.checked)chkObj.checked=true;
if(obj.value==0){
    obj.value = '';
}
 }

1 个答案:

答案 0 :(得分:0)

最好使用Datatables使用分页。

并使用AJAX方法。

$(document).ready(function() {
    $('#example').dataTable( {
        "bProcessing": true,
        "sAjaxSource": '../ajax/sources/arrays.txt'
    } );
} );