我想在display:列中创建一个colspan
,所以我尝试按以下方式执行:
<display:column style="width=50% colspan=2 " title="${textResources['Exam.endDate']}">
但它不起作用似乎不允许在display:列中使用此属性,那么如何做到这一点?
答案 0 :(得分:1)
要向显示列添加colspan,您必须创建Table Decorator扩展TableDecorator类,重写方法init,在此方法中,您需要获取单元格的标题并添加colspan属性。 / p>
package org.hannibal.utils.view.decorators;
import java.util.List;
import javax.servlet.jsp.PageContext;
import org.displaytag.decorator.TableDecorator;
import org.displaytag.model.HeaderCell;
import org.displaytag.model.TableModel;
import org.displaytag.util.HtmlAttributeMap;
public class ColspanTableDecorator extends TableDecorator {
@Override
public void init(PageContext pageContext, Object decorated,
TableModel tableModel) {
super.init(pageContext, decorated, tableModel);
List headersList = tableModel.getHeaderCellList();
HeaderCell myHeader = (HeaderCell)headersList.get(0);
HtmlAttributeMap map = myHeader.getHeaderAttributes();
map.put("colSpan", "2");
}
}
在jsp中我使用它。
<display:table name="sessionScope.employees" pagesize="10" cellpadding="2" cellspacing="0"
decorator="org.hannibal.utils.view.decorators.ColspanTableDecorator">
我希望这会对你有所帮助