glt_mh.ftl 4.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. <#--多记录表的固定表头和扩展表头的输出方式基本一样,所以先先定义个表头宏,简化代码 -->
  2. <#macro GLT_HEADER v_head_arr isFixed>
  3. <div class=fwdatagrid-body>
  4. <table border=0 cellspacing=0 cellpadding=0>
  5. <thead class="fwdatagrid-header">
  6. <#if ((v_head_arr?size) > 0 )>
  7. <#if isFixed ><#--固定表头前才需要先输出一个空列 -->
  8. <#assign td_rownumber>
  9. <td rowspan=${v_head_arr?size}><div class=fwdatagrid-header-rownumber></div></td>
  10. </#assign>
  11. </#if>
  12. <#list v_head_arr as row>
  13. <tr>
  14. ${td_rownumber!""}<#assign td_rownumber=""><#--只在第一行生成,其他行输出空 -->
  15. <#list row as col><#--列数据生成 -->
  16. <#if !(col.lastRowIndex??)><#--标题组生成方式 -->
  17. <td rowspan=${col.rowspan!1} colspan=${col.colspan!1} width="${col.width!""}">
  18. <#if col.checkbox??><#--生成checkbox -->
  19. <input type=checkbox class=fwdatagrid-header-check>
  20. <#else>
  21. ${col.title!""}
  22. </#if>
  23. <#else><#--非标题组生成方式 -->
  24. <td rowspan=${col.rowspan!1} colspan=${col.colspan!1} lastRowIndex="${col.lastRowIndex}"
  25. width="${col.width!""}" _al="${col.colspan!"center"}" sortable=${col.sortable!'true'}>
  26. <#if col.checkbox??><#--生成checkbox -->
  27. <input type=checkbox class=fwdatagrid-header-check>${col.title!""}
  28. <#else>
  29. <span>${col.title!""}</span>
  30. <span class=fwdatagrid-sort-icon>&nbsp;</span>
  31. </#if>
  32. <#--<#assign col_style=col_style+[(col.align!"left")]> -->
  33. </#if>
  34. </td>
  35. </#list>
  36. </tr>
  37. </#list>
  38. <#elseif isFixed>
  39. <tr>
  40. <td rowspan=1><div class=fwdatagrid-header-rownumber></div></td>
  41. </tr>
  42. </#if>
  43. </thead>
  44. </table>
  45. </div>
  46. </#macro>
  47. <#-- 开始生成多记录表脚本-->
  48. <#if parameters.hasTitle!true >
  49. <fieldset class="fieldset2" align="center" style="cursor:default;width:${parameters.width!"100%"}" >
  50. <legend class="legend" style="cursor:hand;" >
  51. <span onclick="_FW.oFtl.fnShowTable('img_${parameters.id}_grid','${parameters.id}')" >
  52. <img id="img_${parameters.id}_grid" src="${request.contextPath}/themes/default/images/query_icon_right.gif">
  53. </span>
  54. <span title="单击展开或收缩" onclick="_FW.oFtl.fnShowTable('img_${parameters.id}_grid','${parameters.id}')">
  55. ${parameters.title!(parameters.glt.title!'')}
  56. </span>
  57. </legend>
  58. </#if>
  59. <div align="left" style="width:100%" id="${parameters.id}" >
  60. <div class="fwdatagrid" style="height:${parameters.options.height!'220'}px;" > <!-- 整个grid的外层 -->
  61. <div class="fwdatagrid-wrap" > <!-- 整个grid的覆盖区 -->
  62. <#assign buildPage=(parameters.options.hasPage||(parameters.options.expbtn?length!"")>0) >
  63. <#if (["TOP","BOTH"]?seq_contains(parameters.pageAlign!"BOTTOM"))&&buildPage >
  64. <div class="fwdatagrid-pager"></div><!-- 整个grid的分页区 -->
  65. </#if>
  66. <div class="fwdatagrid-view" > <!-- 整个grid的数据区 -->
  67. <@GLT_HEADER parameters.mergeHeader true/>
  68. <div class="fwdatagrid-resize-proxy"> </div>
  69. </div>
  70. <#if (["BOTTOM","BOTH"]?seq_contains(parameters.pageAlign!"BOTTOM"))&&buildPage >
  71. <div class="fwdatagrid-pager"></div><!-- 整个grid的分页区 -->
  72. </#if>
  73. </div>
  74. </div>
  75. <input type="hidden" name="_multiple" />
  76. </div>
  77. <#if parameters.hasTitle!true >
  78. </fieldset>
  79. </#if>
  80. <#-- 生成多记录表对应js脚本的区域-->
  81. <script language="javascript">
  82. $(function(){
  83. if($(${parameters.id}).data('_init')){return;}
  84. //标志已经初始化,无需重新初始化
  85. $(${parameters.id}).data('_init',true);
  86. <#if !(parameters.showContent!true)>
  87. _FW.oFtl.fnShowTable('img_${parameters.id}_grid','${parameters.id}');
  88. </#if>
  89. $("#${parameters.id}").fwdatagrid(${tojson(parameters.options)});
  90. });
  91. </script>