+ -
当前位置:首页 → 问答吧 → 高分求!网页中有大表格(200行以上)数据存储时的速度问题!(只能给100分,再开贴送分。)

高分求!网页中有大表格(200行以上)数据存储时的速度问题!(只能给100分,再开贴送分。)

时间:2011-10-09

来源:互联网

在网页中要输出一个比较大的表格(比如50列*200行),表格中的单元格用表格的行号和列号定位,整个表格类似于一个稀疏矩阵,大部分单元格为空,只有少部分单元格有值。表格中每个单元格中的数值都从数据库中读出来,数据库中记录单元格的行号、列号和值,不记录值为空的单元格。页面载入时,从数据库中读出行号、列号和单元格的值显示在相应的单元格里,其他单元格都为空。

单击任意单元格时可以修改或删除单元格中的数值,再存入数据库,然后页面自动刷新,显示出刚才输入的值或者删除。

我在每个单元格中隐藏两个<input>,用其id记录行列的值,再用一个<input>接受单元格输入的值,存入数据库,提交这三个<input>中的值,这样由于输入框太多,整个页面打开比较慢,有什么其他方法可以实现上述功能吗?




作者: fyhrx   发布时间: 2011-10-09

提供个思路,用AJAX解决。表格代码不需要input控件,点击某个单元格时,动态创建一个文本框,将单元格中原始的文本赋值给文本框,同时,在点击单元格的时候获取行列值,绑定单元格onblur事件,失去焦点时判断内容是否有改动,若有改动,通过ajax提交到后台进行数据库操作,操作成功后给出提示并删除文本框,这样某个单元格数据修改后不需要刷新表格页面。

作者: T5500   发布时间: 2011-10-09

嗯? 不用隐藏输入框 直接把输入框以表格的形式展现出来 再设置样式 模拟表格的效果 这样代码会少很多吧...

作者: cwz3323   发布时间: 2011-10-09

用table会比较慢,因为它要加载完整个table事件再显示出来。

如果修改为Div,应该会好一点。考虑用div,其实跟table差不多。

作者: bear63   发布时间: 2011-10-09

热门下载

更多