zoukankan      html  css  js  c++  java
  • <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  
       
  • 相关阅读:
    Note/Solution 转置原理 & 多点求值
    Note/Solution 「洛谷 P5158」「模板」多项式快速插值
    Solution 「CTS 2019」「洛谷 P5404」氪金手游
    Solution 「CEOI 2017」「洛谷 P4654」Mousetrap
    Solution Set Border Theory
    Solution Set Stirling 数相关杂题
    Solution 「CEOI 2006」「洛谷 P5974」ANTENNA
    Solution 「ZJOI 2013」「洛谷 P3337」防守战线
    Solution 「CF 923E」Perpetual Subtraction
    KVM虚拟化
  • 原文地址:https://www.cnblogs.com/henuyuxiang/p/6201860.html
Copyright © 2011-2022 走看看