JSP录入数据急慢的为问题,这个问题关系整个工程的效率问题,大家帮帮我,谢谢,急急急!

renyuming1 2009-04-10 07:35:03
这是我jsp的代码

 <table  id="yhTable" width="100%" cellspacing="0">
<tr> <th class="th_bgcolor" width="3%"> 标记 </th>
<th class="th_bgcolor" width="6%"> 货号
</th> <th class="th_bgcolor" width="12%">
货物名称 </th> <th class="th_bgcolor" width="5%">
规格 </th> <th class="th_bgcolor" width="4%"> 单位 </th>
<th class="th_bgcolor" width="5%"> 零售价 </th>
<th class="th_bgcolor" width="13%"> 生产厂家 </th> <th class="th_bgcolor" width="6%">
供应商 </th> <th class="th_bgcolor" width="12%"> 供应商名称
</th>
<th class="th_bgcolor" width="7%">
存量
</th>
<th class="th_bgcolor" width="7%">
数量
</th>
<th class="th_bgcolor" width="7%">
参考价
</th>
<th class="th_bgcolor" width="5%">
分店库存
</th>
<th class="th_bgcolor" width="10%">
备注
</th>

</tr>
<c:if test="${requestScope['wshyh'] !='Y'}">
<tr id="insert" >
<td style="text-align:center">
<input type="checkbox" name="bj2" style="text-align:center" onclick="bj1()" onkeydown="if(event.keyCode==13)event.keyCode='9'" onchange="xinjianyong()">
<input type="hidden" name="bj" value="0">
</td>
<td> <input type="text" id="hh" name="hh" style="width:100%;height:100%" value="" onkeydown="common()" onchange="xinjianyong()">
</td>
<td> <input type="text" id="hwmc" name="hwmc" style="width:100%;height:100%" value="" readonly="readonly" class="readonlycolor"/></td>
<td> <input type="text" id="gg" name="gg" style="width:100%;height:100%" value="" readonly="readonly" class="readonlycolor"/></td>
<td> <input type="text" id="dw" name="dw" style="width:100%;height:100%" value="" readonly="readonly" class="readonlycolor"/></td>
<td> <input type="text" id="lsj" name="lsj" style="width:100%;height:100%;background-color:#E6F1F7" value="" class="td_number1" readonly="readonly"/></td>
<td> <input type="text" id="sccj" name="sccj" style="width:100%;height:100%" value="" readonly="readonly" class="readonlycolor"></td>
<td> <input type="text" id="gysbh" name="gysbh" style="width:100%;height:100%" value="" onkeydown="xzgys()" onchange="xinjianyong()" maxlength="10">
</td>
<td> <input type="text" id="gysmc" name="gysmc" style="width:100%;height:100%" value="" readonly="readonly" class="readonlycolor"></td>
<td> <input type="text" id="cl" name="cl" style="width:100%;height:100%;background-color:#E6F1F7" value="" class="td_number1" readonly="readonly" ></td>
<td> <input type="text" id="sl" name="sl" style="width:100%;height:100%" value="0.00" class="td_number1" onchange="common2()" maxlength="9" onkeyup="if(isNaN(value))execCommand('undo')" onkeydown="if(event.keyCode==13)event.keyCode='9'" >
<input type="hidden" name="hjhk">
</td>
<td> <input type="text" id="jhj" name="jhj" style="width:100%;height:100%" class="td_number1" onkeyup="if(isNaN(value))execCommand('undo')" maxlength="9" onkeydown="if(event.keyCode==13)event.keyCode='9'" onchange="xinjianyong()">
</td>
<td>
<input type="text" id="fdkc" name="fdkc" style="width:100%;height:100%;background-color:#E6F1F7" value="" class="td_number1" readonly="readonly" onmouseover="richContext(); return false;" onmouseout="hide()" onkeydown="if(event.keyCode==13)event.keyCode='9'">
<div id ="fdkcl" style="display:none;" >
</div>
</td>
<td> <input type="text" id="beizhu" name="beizhu" style="width:100%;height:100%" value="" maxlength="50" onkeydown="if(event.keyCode==13)insertrow()" onchange="xinjianyong()">
</td>
</tr>
</c:if>


这是js的代码 实现添加一行的功能
  ocell.innerHTML="<input type=checkbox  name=bj2  style='text-align:center'  onclick='bj1()' onkeydown=if(event.keyCode==13)event.keyCode='9' > <input type=hidden name=bj value=0>";

var ocell=otr.insertCell(1);
ocell.innerHTML="<input type=text id='hh' name=hh size=6 value='' style='width:100%;height:100%' onkeydown='common()' onchange='xinjianyong()'>";

var ocell=otr.insertCell(2);
ocell.innerHTML="<input type=text id='hwmc' name=hwmc size=13 value='' style='width:100%;height:100%' readonly=readonly class=readonlycolor>";

var ocell=otr.insertCell(3);
ocell.innerHTML="<input type=text id='gg' name=gg size=7 value='' readonly=readonly style='width:100%;height:100%' class=readonlycolor>";

var ocell=otr.insertCell(4);
ocell.innerHTML="<input type=text id='dw' name=dw size=4 value='' readonly=readonly style='width:100%;height:100%' class=readonlycolor>";

var ocell=otr.insertCell(5);
ocell.innerHTML="<input type=text id='lsj' class=td_number1 name=lsj size=7 value='' readonly=readonly style='background-color:#E6F1F7;width:100%;height:100%'>";

var ocell=otr.insertCell(6);
ocell.innerHTML="<input type=text id='sccj' name=sccj size=14 value='' style='width:100%;height:100%' readonly=readonly class=readonlycolor>";

var ocell=otr.insertCell(7);
ocell.innerHTML="<input type=text id='gysbh' name=gysbh size=7 value='' onkeydown='xzgys()' style='width:100%;height:100%' maxlength='10'>";

var ocell=otr.insertCell(8);
ocell.innerHTML="<input type=text id='gysmc' name=gysmc size=14 value='' readonly=readonly style='width:100%;height:100%' class=readonlycolor>";

var ocell=otr.insertCell(9);
ocell.innerHTML="<input type=text id='cl' name=cl size=4 value='' class=td_number1 readonly=readonly style='background-color:#E6F1F7;width:100%;height:100%'>";

var ocell=otr.insertCell(10);
ocell.innerHTML="<input type=text id='sl' name=sl size=4 value='0.00' class=td_number1 onchange='common2()' style='width:100%;height:100%' maxlength='9' onkeydown=if(event.keyCode==13)event.keyCode='9' onkeyup=if(isNaN(value))execCommand('undo') > <input type='hidden' name='hjhk'>";

var ocell=otr.insertCell(11);
ocell.innerHTML="<input type=text id='jhj' name=jhj size=5 class=td_number1 maxlength='9' style='width:100%;height:100%' onkeyup=if(isNaN(value))execCommand('undo') onkeydown=if(event.keyCode==13)event.keyCode='9'>";

var ocell=otr.insertCell(12);
ocell.innerHTML="<input type=text id='fdkc' name=fdkc size=8 value='' class=td_number1 readonly=readonly style='width:100%;height:100%;background-color:#E6F1F7' onmouseover='richContext(); return false;' onmouseout='hide()' onkeydown=if(event.keyCode==13)event.keyCode='9'> <div id ='fdkcl' style='display:none;' ></div> " ;

var ocell=otr.insertCell(13);
ocell.innerHTML="<input type=text id='beizhu' name=beizhu size=8 value='' maxlength='50' style='width:100%;height:100%' onkeydown='if(event.keyCode==13)insertrow()' >";


这是jsp上 录入数据的主要代码 js实现的是添加一行的代码 当我再jsp上添加20条数据(每条数据大概有10个input左右)后 ,jsp页面会变得很慢 滚动条无法动弹 ,当到30条数据后 根本无法动弹,我想问问 有没有其他的控件录入数据??这样的的效率太低了,或者采用一些 其他的措施解决录入数据慢的问题?或者有没有什么写的控件能直接拿来用啊 ,请高人帮忙,困惑我很久了,忘大家多提意见 谢谢!!!!!!!
...全文
132 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
龙飞tgbmlp 2009-04-11
  • 打赏
  • 举报
回复
lz的代码没有给全!


我不知道你这个页面是否指数录入,要只是录入的话,你可以优化一下JS代码,看看能不能快。
有没有现成的我也不知道。
如果数据量却是很大,你可以让用户上传csv然后在解析放到数据库中,不用在html表格里录入。
数据量大的情况下,本身在页面上录入也不方便,还有考虑session过期问题。
jinchun1234 2009-04-11
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 tgbmlp 的回复:]
lz的代码没有给全!


我不知道你这个页面是否指数录入,要只是录入的话,你可以优化一下JS代码,看看能不能快。
有没有现成的我也不知道。
如果数据量却是很大,你可以让用户上传csv然后在解析放到数据库中,不用在html表格里录入。
数据量大的情况下,本身在页面上录入也不方便,还有考虑session过期问题。
[/Quote]
fanyuanwaifdl 2009-04-11
  • 打赏
  • 举报
回复
up
dzhuowei 2009-04-11
  • 打赏
  • 举报
回复
不要把显示和处理都放到一个页面里
HTML只用来做门面就可以啦
数据检验,业务逻辑都应该脱离出来
ben0759 2009-04-11
  • 打赏
  • 举报
回复
楼主可以考虑优化js代码,第一,没必要用到innerHtml,用createNode可能会效率高点
第二,如果效率越来越慢,很有可能是循环出问题了,看看有没有死循环或者循环迭代了。
susoft2008 2009-04-10
  • 打赏
  • 举报
回复
蛮复杂。。。

81,111

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧