<display:column>属性解释

参考官方网站:http://www.displaytag.org/1.2/displaytag/tagreference.html

所有属性:

autolink,class,comparator,decorator,defaultorder,escapeXml,format,group,headerClass,headerScope,
href,maxLength,maxWords,media,nulls,paramId,paramName,paramScope,paramProperty,property,scope,sortable,sortName,
sortProperty,style,title,titleKey,totle,url,value

 

注释:红色行代表没有理解或者还不清楚具体功能,有待补充的......

 property 主要是用来指明需要显示的元素的属性名,同时表格中的列名也就是property的值(没有title属性时),但是会以大写字母开头。
 title 页面中显示的表格的列名。代替property这个默认的列名。
 style  这个是正常表格中的td的style属性,用来直接定义CSS样式。
 class 这个是正常表格中的td的class属性,用来引用CSS。
 headerClass 这个是该列的列名的class属性,也就是th的class属性,可以用来控制列标题样式。
 autolink autolink="true":作用是自能链接,可以将邮箱或者网址转为超链接,而不是单纯的文本显示。转化的结果为:<a href="mailto:xxx">xxx</a>或者<a href="xxx">xxx</a> 还有一点就是它只会将匹配到的邮箱或者网址变成超链接,其他的部分(如果有的话,一般是空格分隔的)还是正常的文本显示。额,好吧最后一点,如果数据量大,这个属性会有性能损失,因为它需要扫描bean值,来匹配网址和邮箱。。。我不关心性能。。。
 decorator  指向自定义装饰器的全路径类名。是ColumnDecorator的子类或者DisplaytagColumnDecorator的子类。
 href 生成动态链接,包含主机名,但是不包含项目名,就是没有所谓的根路径。而且如果以http://开头的话,也可以跨域跳转,比如跳转到百度。
 url 生成动态链接,包含主机名和根路径,不能跨域跳转,也就是只能在项目内跳转。
 paramId 添加到超链接后的参数名,后台根据它来获取参数值,只能定义一个参数。
 paramProperty 参数值,只能是bean的属性名,不能直接将参数设置为一个字符串常量。可以用隐藏常量列来达到赋值字符串常量的目的,但是本质还是属性值。
 paramName bean的名字,默认值null,一般就是指当前行所指向的bean对象。
 paramScope bean的范围,默认值null,当前bean。
 sortable 默认值false,如果赋值"true":该列具有排序功能,点击列名即可排序。
 defaultorder 默认值ascending,descending。声明默认排序是升序还是降序。
 group group="整数":对数据进行分组,可以级联分组,就像数据库查询一样,不过没有数据库的好,因为必须是排序好的,才有级联效果。否则很糟糕。
 total 默认值是false,没有统计功能,如果 total="true",就有统计功能,一般是和group一起使用,会对每个分组进行合计,最后总计。实际上更加复杂,<display:table>标签必须有一个TotalTableDecorator,统计功能才有效果。就算没有这个Decorator,还可以手动实现统计功能,因为total="true"还有另外一个效果,<display:table>有一个属性varTotals,它的值是一个Map。key是列序号"column1","column2"...value则是对应每个列的统计结果,具有total="true"的列。所以可以用EL表达式来取到结果,但是有一个限制,这个varTotals变量只能在<display:foot>标签中使用。
 media 控制该列在某一类型文件中是否导出/显示。合法值:html,xml,csv,excel。注意可以通过该属性在网页上不显示该列,也就是隐藏列。media="csv xml"就表示不再html网页上显示该列,但是在csv和xml导出文件中还是有该列。
 nulls  默认值nulls="false",如果该属性为null,页面上不会显示null,而是为空,如果nulls="true",并且该属性为null,则显示null,主要用在测试上的时候。
 maxLength  定义该属性最大长度,用...代替过长部分
 maxWords  定义该属性最大字数,用...代替过长部分
 format  格式化显示bean属性值,可以使用任意合法的java.text.MessageFormat模式,主要适用于时间和金钱的格式化:
<display:column property="date" format="{0,date,dd-MM-yyyy}" />
<display:column property="money" format="{0,number,000,000,000.00} $" />
   
 comparator 该列的比较器,指向自定义类的全路径名,实现Comparator,默认值就是DefaultComparator。实际上应该用不到,一般列的值不是字符串就是数字,如果列的值还是一个对象,那么如何显示这个对象呢,至少要实现该对象的toString方法。然后才是实现自己的Comparator比较器。
 escapeXml 效果类似于jstl中的<c:out escapeXml="true|false" />,这个属性大家不一定使用过,不过可以了解一下,<c:out>标签中该属性默认值是true,而<display:column>标签默认值是false,当该属性为true时,它会自动转化待显示的字符串中的特殊字符,比如html中的<,>,',",&,这些字符会转成实体字符,&lt;&gt;等这样的结果就是在网页上原封不动地显示了原字符串。相反如果该属性值是false,它是不会做任何转换的。这样由浏览器显示的时候,就有可能得到意想不到的结果。
 headerScope 这个是正常表格中th的scope属性
 scope 这个是正常表格中td的scope属性
 sortName   
 sortProperty  
 titleKey  
 value  
   
posted @ 2013-12-15 23:26  ThreeTree  阅读(7049)  评论(0编辑  收藏  举报