## Grid

Templating System : Designer Guide : Tag Reference : Grid

### Summary

The `grid` tag is used to output each row of a multirow datasource as a cell of an n column grid.

### Usage

    <!-- Begid grid layout, i.e. <table> -->
    <table>

    <grid name="datasource" cols="n">

      <if @datasource.col@ eq 1>
        <!-- Begin row, i.e. <tr> -->
        <tr>
      </if>

      <!-- Cell layout, i.e. <td>...</td> -->
      <td>

        <!-- Cells may be unoccupied at the end. -->
        <if @datasource.rownum@ le @datasource:rowcount@>
          ...
          @datasource.variable@
          ...
        </if>

        <else>
          <!-- Placeholder to retain cell formatting -->

        </else>

      </td>

      <if @datasource.col@ eq "n">
        <!-- End row, i.e. </tr> -->
        </tr>
      </if>

    </grid>

### Notes

- Rows from the data source are output in column-first order. For example, if a datsource has 10 datasources and the grid has 3 columns, the rows from the datasource will appear in the following order:

  1 | 5 | 9
  2 | 6 | 10
  3 | 7 |
  4 | 8 |

- The `@datasource.row@` variable can be used to band grid rows:

        <if @datasource.col@ eq 1 and @datasource.row@ odd>
          <tr bgcolor=#eeeeee>
        </if>

        <if @datasource.col@ eq 1 and @datasource.row@ even>
          <tr bgcolor=#ffffff>
        </if>

  Note that this is different from the `multiple` tag, where the `@datasource.rownum@` is used for this effect.

templating@arsdigita.com