參考官方網站: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
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中的<,>,',",&,這些字符會轉成實體字符,<>等這樣的結果就是在網頁上原封不動地顯示了原字符串。相反如果該屬性值是false,它是不會做任何轉換的。這樣由瀏覽器顯示的時候,就有可能得到意想不到的結果。 |
headerScope | 這個是正常表格中th的scope屬性 |
scope | 這個是正常表格中td的scope屬性 |
sortName | |
sortProperty | |
titleKey | |
value | |