0

我正在使用 CodeIgniter 的HTML 表格类,并尝试创建表格模板。文档中给出的示例如下:

$tmpl = array (
                'table_open'          => '<table border="0" cellpadding="4" cellspacing="0">',

                'heading_row_start'   => '<tr>',
                'heading_row_end'     => '</tr>',
                'heading_cell_start'  => '<th>',
                'heading_cell_end'    => '</th>',

                'row_start'           => '<tr>',
                'row_end'             => '</tr>',
                'cell_start'          => '<td>',
                'cell_end'            => '</td>',

                'row_alt_start'       => '<tr>',
                'row_alt_end'         => '</tr>',
                'cell_alt_start'      => '<td>',
                'cell_alt_end'        => '</td>',

                'table_close'         => '</table>'
          );

$this->table->set_template($tmpl);

当我将此模板应用于我的查询时,这是生成的 HTML:

<table data-hide-table="false" data-orientation="vertical" class="chart">
<thead>
<tr>
<th></th><th>Rate per SF</th></tr>
</thead>
<tbody>
<tr>
<td>2008</td><td>48</td></tr>
<tr>
<td>2009</td><td>32</td></tr>
<tr>
<td>2010</td><td>32</td></tr>
<tr>
<td>2011</td><td>32</td></tr>
<tr>
<td>2012</td><td>40</td></tr>
<tr>
<td>2013</td><td>41</td></tr>
</tbody>
</table>

此示例的问题是每一行包含两个数据元素 ( <td></td><td></td>),而不是一个标题元素和一个数据元素 ( <th></th><td></td>)。

如何更改模板,以便生成的表格<th></th><td></td>在每一行上都有一个标题元素和一个数据元素 ( ),如下所示:

<table data-hide-table="false" data-orientation="vertical" class="chart">
<thead>
<tr>
<th></th><th>Rate per SF</th></tr>
</thead>
<tbody>
<tr>
<th>2008</th><td>48</td></tr>
<tr>
<th>2009</th><td>32</td></tr>
<tr>
<th>2010</th><td>32</td></tr>
<tr>
<th>2011</th><td>32</td></tr>
<tr>
<th>2012</th><td>40</td></tr>
<tr>
<th>2013</th><td>41</td></tr>
</tbody>
</table>

谢谢。

4

1 回答 1

1

答案是否定的,您不能像这样更改模板,但是是的,您可以在某处实现这种功能

如果您看到http://ellislab.com/codeigniter/user-guide/libraries/table.html有一个添加可调用函数的选项,所以我建议您正在创建一个表,如果您正在使用该表,请制作一些标志是生成而不是创建一个辅助函数并将其添加到表函数中,而不是在生成表之前设置一个标志以确定第一个单元格可能正在使用 cookie。比每 1、3....(2n+1) 的助手添加一些自定义 html 标记或样式。比生成表后删除所有标志。

于 2013-09-23T09:45:56.107 回答