日期:2013-09-26  浏览次数:20737 次

  由于做的项目中,需求实现这样一个功用,在html页面中的表格行,要求可以由用户来自行调整上下的顺序。不知道现有的技术能否实现这样功用,有待研讨一下。在这之前曾经知道并使用过,可以通过脚本来动态创建表格,但仅用了其中很简单的功用而已。昨天上班时特意下载了一份中文的微软DHTML参考手册,今天晚上正好来细心研讨一下其中的table对象。首先研讨了如何实现所需求的功用,查看tr对象的方法,发现最后有一个swapNode的方法,看了这个方法的详细说明(是英文的,看来这本手册也没有完全翻译成中文,还好也能看懂),交换html文档中的两个对象。那只需把两个tr对象交换一下不就可以实现我所需求的功用了,原来如此简单。另一个问题是,我需求知道当前操作的行(tr)在表格中是第几行,当然可以本人定义参数传递,但比较麻烦,一旦行交换后,这个行对象(tr)所对应的参数也要变化,写程序不是很方便。再看tr的属性,有一个叫rowIndex的属性,可以取得当前行位于表格中的第几行,正是所需求的。依据以上的两个方法,很快就实现了所需求的功用。具体看例子:

 

  问题处理了,再来看看table中有什么好用的东西,有新的发现再报告。

  1.table的RULES属性:可以设置表格的分隔线能否显示 all:显示所有表格线 cols:显示内部竖线和外框 rows:显示内部横线和外框 none:只显示外框,所有内部线都不显示 groups:显示外框,内部横线在THEAD,TBODY,TFOOT对象之间显示,竖线在所有的colGroup对象之间显示。

  不设置该属性时,如果定义了表格(table)的border属性,则显示所有的表格线,如果没有定义border属性,则全部不显示,包括外框。

  2.frame属性,类似于RULES,也是用来设置表格的边框能否显示 3.moveRow方法:table中还有一个moveRow的方法,也可以用来实现行的交换 4.关于绑定数据的研讨:table的dataSrc属性可以给表格绑定一个数据源,表格中显示该数据源的内容,然后可以调用table的firstPage,lastPage,nextPage,previousPage等方法方便快速的实现翻页,可以用dataPageSize来指定每页显示的记录数。只初步的了解这些,日后在细心研讨关于绑定数据源的做法。