| 208 | |
| 209 | // thead 区域模板 |
| 210 | var TPL_HEADER = function (options) { |
| 211 | // 合并单元格属性模板片段 |
| 212 | var rowCols = [ |
| 213 | "{{# var colspan = layui.type(item2.colspan2) === 'number' ? item2.colspan2 : item2.colspan; }}", |
| 214 | '{{# if(colspan){ }} colspan="{{=colspan}}"{{# } }}', |
| 215 | '{{# if(item2.rowspan){ }} rowspan="{{=item2.rowspan}}"{{# } }}' |
| 216 | ].join(''); |
| 217 | |
| 218 | options = options || {}; |
| 219 | |
| 220 | // 固定列条件判断 |
| 221 | var fixedCondition = (function () { |
| 222 | if (options.fixed && options.fixed !== 'right') { |
| 223 | return '{{# if(item2.fixed && item2.fixed !== "right"){ }}'; |
| 224 | } |
| 225 | if (options.fixed === 'right') { |
| 226 | return '{{# if(item2.fixed === "right"){ }}'; |
| 227 | } |
| 228 | return ''; |
| 229 | })(); |
| 230 | |
| 231 | return [ |
| 232 | // 表格开始标签及基础属性 |
| 233 | '<table cellspacing="0" cellpadding="0" border="0" class="layui-table"', |
| 234 | ' {{# if(d.data.skin){ }} lay-skin="{{=d.data.skin}}"{{# } }}', |
| 235 | ' {{# if(d.data.size){ }} lay-size="{{=d.data.size}}"{{# } }}', |
| 236 | ' {{# if(d.data.even){ }} lay-even{{# } }}>', |
| 237 | |
| 238 | // 表头开始 |
| 239 | ' <thead>', |
| 240 | |
| 241 | // 遍历列配置 - 外层循环(行) |
| 242 | ' {{# layui.each(d.data.cols, function(i1, item1){ }}', |
| 243 | ' <tr>', |
| 244 | |
| 245 | // 遍历列配置 - 内层循环(列) |
| 246 | ' {{# layui.each(item1, function(i2, item2){ }}', |
| 247 | |
| 248 | // 设置左右固定列标识 |
| 249 | ' {{# if(item2.fixed && item2.fixed !== "right"){ left = true; } }}', |
| 250 | ' {{# if(item2.fixed === "right"){ right = true; } }}', |
| 251 | |
| 252 | // 固定列条件判断 |
| 253 | fixedCondition, |
| 254 | |
| 255 | // 排序标识 |
| 256 | ' {{# var isSort = !(item2.colGroup) && item2.sort; }}', |
| 257 | |
| 258 | // th 标签开始 - 基础属性 |
| 259 | ' <th data-field="{{= item2.field||i2 }}"', |
| 260 | ' data-key="{{=d.index}}-{{=i1}}-{{=i2}}"', |
| 261 | |
| 262 | // th 标签 - 可选属性 |
| 263 | ' {{# if(item2.parentKey){ }} data-parentkey="{{= item2.parentKey }}"{{# } }}', |
| 264 | ' {{# if(item2.minWidth){ }} data-minwidth="{{=item2.minWidth}}"{{# } }}', |
| 265 | ' {{# if(item2.maxWidth){ }} data-maxwidth="{{=item2.maxWidth}}"{{# } }}', |
| 266 | ' {{# if(item2.style){ }} style="{{=item2.style}}"{{# } }}', |
| 267 | |