如何做到不刷新整个页面更新表格
比如在IE中显示的页面,有一个数据表,需要增加很多行,每填一行就需要add一次,马上显示在下面。如果提交到SERVER上再生成整个页面就会很慢,所以如果能只做局部的更新就有更好的性能和可用性。
哪位高手请赐教。
谢谢
问题点数:100、回复次数:5Top
1 楼qo(qoo)回复于 2002-10-16 14:42:40 得分 10
可作一个servlet让它在后台运行,负责从数据库取数,
前台你用(javascript)增加表格的时候内加空行,然后运行servlet取到数
在填到表格中即可.Top
2 楼kenpa(大海无量)回复于 2002-10-16 14:47:19 得分 10
如果你每次ADD一下的数据是从数据库里取的话,
不刷新整个页面来更新部分表格是不行的
反正要刷新一个页面。可以在IFRAME 里刷新隐藏页面,然后用innerHtlm写入到外面那个页面中,只能这样做到看不出刷新。Top
3 楼superbamboo(空心竹)回复于 2002-10-16 16:49:30 得分 80
下面可能是你想要的,可以参考一下
<html>
<head>
<script language="javascript">
function addNew(rowsCount,cellsCount,postRowsCount)
{
with(window.event)
{
var e=srcElement //e=input
var r=e.parentElement.parentElement //r=tr
var t=r.parentElement.parentElement //t=table
//alert(r.parentElement.tagName)
if(keyCode==68 && ctrlKey && t.rows.length>rowsCount)
{
t.deleteRow(r.rowIndex)
r.cells
return false;
}
if(keyCode!=13||e.parentElement.cellIndex!=cellsCount-1)
return true;//e.parentElement=td
//if(t.rows.length>r.rowIndex+1)return true;
var n=t.insertRow(t.rows.length-postRowsCount);
for(i=0;i<r.cells.length;i++)
{
var c=n.insertCell();
c.innerHTML=r.cells(i).innerHTML;
c.children[0].value="";
}
}
}
</script>
</head>
<body bgcolor="#FFFFFF" text="#000000" onkeydown="if(event.keyCode==13 && event.srcElement.tagName!='TEXTAREA') {event.keyCode=9;}">
<table >
<tr>
<td width="49%">
<input type="text" name="other_project_name" size="5" onKeyDown="addNew(1,2,0)">
</td>
<td width="51%">
<input type="text" name="other_task" size="5" onKeyDown="addNew(1,2,0)">
</td>
</tr>
</table>
</body>
Top
4 楼beming(Aming)回复于 2002-10-16 17:31:33 得分 0
用楼上的可以吗??Top
5 楼airlulu(airlulu)回复于 2002-11-28 09:17:17 得分 0
用applet吧Top




