`

Jmesa colspan header or bottom

阅读更多

At the bggining,Sorry! I'm spanish an I don't speck english very well, but I want to try some experience in writing.I hop you can understand me.

Today research jmesa colspan header or bottom, I useing jmesa tag:

jmesa provide abstract class  AbstractHtmlView ,extends this class and override render() method.

The following is a simple intorduction principle: If you look for jmesa source, you need see the

org.jmesa.facade.tag.TableFacadeTag class, The doTag() method 

        View v = tableFacade.getView();
        String html = v.render().toString();
        getJspContext().getOut().print(html);

this code, if you override render(),then httmBuild project append you custom html tag,if you not ovrride redirect jmesa internal out html. if the table is more complicated, rewrite up inside the more difficult.

Ok ..... please the the simple code as following:

 

public class CreateView extends AbstractHtmlView{

   public Object render() {
        HtmlSnippets snippets = getHtmlSnippets();
        HtmlBuilder html = new HtmlBuilder();
        html.append(snippets.themeStart());
        html.append(snippets.tableStart());
        html.append(snippets.theadStart());
        html.append(snippets.toolbar());
        html.append(snippets.filter());
        html.append(addHeader());   // add header
        html.append(snippets.header());     
        html.append(snippets.theadEnd());

        html.append(snippets.tbodyStart());       
        html.append(snippets.body());
        html.append(addHtml());    // add footer
        html.append(snippets.tbodyEnd());
        html.append(snippets.footer());
        html.append(snippets.statusBar());
        html.append(snippets.tableEnd());
        html.append(snippets.themeEnd());
        html.append(snippets.initJavascriptLimit());
        return html.toString();
    }

 

 private String addHeader(){
         HtmlBuilder html = new HtmlBuilder();
         html.tr(1).styleClass("odd").close();
         html.td(2).align("center").close().append("Header - A").tdEnd();
         html.td(2).colspan("2").align("center").close().append("Header - B").tdEnd();
         html.trEnd(1);
        return html.toString();
     }
     private String addHtml() {
        HtmlBuilder html = new HtmlBuilder();
         html.tr(1).styleClass("odd").close();
         html.td(2).colspan("2").style("border-right: 1px solid white").close().append("Category").tdEnd();
         html.td(2).colspan("2").close().append("Subcategory").tdEnd();
         html.trEnd(1);
        return html.toString();
     }

 

}

 

view

 

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="jmesa" uri="http://code.google.com/p/jmesa"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
    <head>
        <title></title>
        <link rel="stylesheet"
            href="${pageContext.request.contextPath}/css/jmesa.css"
            type="text/css"></link>
        <link rel="stylesheet"
            href="${pageContext.request.contextPath}/css/jmesa-pdf.css"
            type="text/css"></link>
        <script type="text/javascript"
            src="${pageContext.request.contextPath}/component/js/jmesa.js"></script>
        <script type="text/javascript"
            src="${pageContext.request.contextPath}/component/js/jmesa.min.js"></script>
        <script type="text/javascript"
            src="${pageContext.request.contextPath}/component/js/jquery.jmesa.js"></script>
        <script type="text/javascript"
            src="${pageContext.request.contextPath}/component/js/jquery.jmesa.min.js"></script>

    </head>
    <body>
<form id="from1">
    <jmesa:tableFacade id="employee" items="${employees}"
        view="org.jmesa.v.CategoryHierarchyView"
        stateAttr="restore" maxRows="8" exportTypes="jexcel,pdf,csv"
        maxRowsIncrements="2,4,6,8" var="employee">
        <jmesa:htmlTable captionKey="" width="500px" >
            <jmesa:htmlRow >
                <jmesa:htmlColumn property="name" titleKey="employee.name" >
                  ${employee.name}
                  </jmesa:htmlColumn>
                <jmesa:htmlColumn property="age" titleKey="employee.age">
                    ${employee.age}
             </jmesa:htmlColumn>
               
                <jmesa:htmlColumn property="city" titleKey="employee.city">
                    ${employee.city}
                 </jmesa:htmlColumn>
               
                <jmesa:htmlColumn property="department"
                    titleKey="employee.department">
                        ${employee.department}
                </jmesa:htmlColumn>
            </jmesa:htmlRow>
        </jmesa:htmlTable>
    </jmesa:tableFacade>
 <table >
        <tr align="left"><td style=" " align="center"></td></tr>
</table>
</form>
<script type="text/javascript">
    function onInvokeAction(id) {
        $.jmesa.setExportToLimit(id, '');
        $.jmesa.createHiddenInputFieldsForLimitAndSubmit(id);
    }
    function onInvokeExportAction(id) {
        var parameterString = $.jmesa.createParameterStringForLimit(id);
        location.href = '${pageContext.request.contextPath}/servlet/EmployeeServlet?' + parameterString;
    }
</script>
</body>
</html>

 

 

image

 

 

 

 

 

 

 

 

  • 大小: 7.4 KB
分享到:
评论

相关推荐

    colspan使用方法

    ### Colspan 使用方法详解 在HTML表格中,`colspan`属性是一个非常实用的功能,它允许表格中的单元格跨越多列显示。这对于创建复杂、灵活的表格布局非常有用。接下来,我们将详细介绍`colspan`属性的基本概念、用法...

    colspan和rowspan

    首先,`colspan` 属性是表格单元格`&lt;td&gt;`或表头单元格`&lt;th&gt;`的一个属性,它的全称是“列跨度”。通过设置 `colspan` 的值,我们可以让一个单元格跨越多个列。例如,如果一个单元格的 `colspan="2"`,那么这个单元格...

    Ext3.0单元格

    {header:_T('Source'),colspan:4,align:'center'}, {header:_T('Destination'),colspan:2,align:'center'}, {colspan:1,rowspan:true}, {colspan:1,rowspan:true}, {colspan:1,rowspan:true}, {colspan:1,...

    js动态修改表格行colspan列跨度的方法

    在示例代码中,`x[0].colSpan="2"`将第一个单元格的`colspan`设置为2,`x[1].colSpan="6"`将第二个单元格的`colspan`设置为6。这使得原本跨越4列的两个单元格合并成一个新的单元格,跨越了2+6=8列,即整个表格宽度。...

    table-fixed-header:当页面滚动时,保持表格标题可见。 支持rowspan和colspan。 表格标题会在到达屏幕顶部时被修复。 twitter bootstrap的示例

    与多个标题行和colspan一起使用使用:colspan =&gt; 1和:rowspan =&gt; 2可以使用多个tr和th。 这就是我们需要的自己。 参见example.html.haml #例子打开example.html来检查行为。 html是使用haml example....

    通过jquery还原含有rowspan、colspan的table的实现方法

    rowspan属性用于定义表格中的单元格(td或th)能够横跨多少行,而colspan属性则用于定义单元格能够横跨多少列。这样的设计允许表格在视觉上展示更为复杂和多样的数据排列,但在使用JavaScript或jQuery进行操作时,就...

    HTML表格标记教程(35):跨列属性COLSPAN

    在复杂的表格结构中,有的单元格在垂直方向上是跨多个单元格的,这就需要使用跨列属性COLSPAN。 基本语法 &lt;TD COLSPAN=VALUE&gt; 语法解释 VALUE代表单元格跨的列数。 文件范例:10-33.htm 通过COLSPAN属性实现跨列的...

    javascript 动态table添加colspan\rowspan 参数的方法

    - 在设置`colSpan`和`rowSpan`属性时,属性名应当首字母大写,即`colSpan`和`rowSpan`,这是JavaScript中属性命名的规范。 - 如果要在页面加载完毕之后立即执行脚本,应该将JavaScript代码放置在`&lt;body&gt;`标签的底部...

    jQuery选择没有colspan属性的td的代码

    代码如下:$(“#tableName td:not([colspan])”)下面是一些补充资料:filter()和not(): [removed] $(document).ready(function() { //输出 hello alert&#40;$(“p”&#41;.filter(“.selected”).html()); //输出 How ...

    js统计Table单元格实际行列 不用rowSpan colSpan,而用offsetLeft

    在JavaScript编程中,统计Table单元格的实际行列位置通常涉及到`rowSpan`和`colSpan`属性的使用。然而,有时我们可能需要避开这些属性,转而利用其他方法来获取单元格的位置信息,例如通过计算其`offsetLeft`值。...

    Jquery原生态实现表格header头随滚动条滚动而滚动

    最近在做一个项目,功能... html表头代码: 代码如下: ”header”&gt; ”150″ xss=removed&gt; &lt;/td&gt; &lt;td colspan=”2″ xss=removed&gt; &lt;/td&gt; &lt;td colspan=”7″&gt;师资力量&lt;/td&gt; &lt;td colspan=”14″&gt;科研&lt;/td&gt; &lt;td style=”

    小书匠语法说明之表格1

    &lt;td colspan="2"&gt;Content Cell &lt;td&gt;Content Cell &lt;td&gt;Content Cell &lt;td&gt;Content Cell 多表格头和多表格身是指在表格中可以设置多个表头(thead)和多个表身(tbody),这在处理复杂的数据组织时非常...

    jsp合并单元格

    &lt;td colspan="${data.colspan}" rowspan="${data.rowspan}"&gt;${data.content} ``` 这里,`data.colspan`和`data.rowspan`是根据业务逻辑计算得出的值,`data.content`是合并单元格内的内容。 4. **注意点**:...

    createtable.rar_javascript

    单元格合并主要通过设置`colspan`和`rowspan`属性来实现,这两个属性分别表示单元格跨过的列数和行数。例如,若要合并两列,可以这样设置: ```javascript &lt;td colspan="2"&gt;合并后的单元格 ``` 若要通过JavaScript...

Global site tag (gtag.js) - Google Analytics