—
layout: post
title: displaying beautiful interactive tables
date: 2023-03-20 14:37:00-0400
description: an example of how to use interactive tables in al-folio
categories: sample-posts
related_posts: true
pretty_table: true
—
#
Using markdown to display tables is easy.
#
## Simple Example
#
First, add the following to the post’s front matter
#
```yml
pretty_table: true
```
#
Then, the following syntax
#
```markdown
| Left aligned | Center aligned | Right aligned |
| :———– | :————: | ————: |
| Left 1 | center 1 | right 1 |
| Left 2 | center 2 | right 2 |
| Left 3 | center 3 | right 3 |
```
#
will generate
#
| Left aligned | Center aligned | Right aligned |
| :———– | :————: | ————: |
| Left 1 | center 1 | right 1 |
| Left 2 | center 2 | right 2 |
| Left 3 | center 3 | right 3 |
#
<p></p>
#
## HTML Example
#
It is also possible to use HTML to display tables. For example, the following HTML code will display an interactive table loaded from a JSON file.
# # #
```html
<table id="table" data-toggle="table" data-url="{{ '/assets/json/table_data.json' | relative_url }}">
<thead>
<tr>
<th data-field="id">ID</th>
<th data-field="name">Item Name</th>
<th data-field="price">Item Price</th>
</tr>
</thead>
</table>
```
# # #
<table
data-toggle=”table”
data-url=”/assets/json/table_data.json”>
<thead>
<tr>
<th data-field="id">ID</th>
<th data-field="name">Item Name</th>
<th data-field="price">Item Price</th>
</tr>
</thead>
</table>
#
<p></p>
#
## More Complex Example
#
You can create complex tables with pagination, search, sorting, checkboxes, and custom alignment. In v1.x, this works in both modes:
#
- Tailwind-first mode (al_folio.compat.bootstrap.enabled: false) via the built-in vanilla table engine.
- Bootstrap compatibility mode (al_folio.compat.bootstrap.enabled: true) via Bootstrap Table.
# # #
```html
<table
data-click-to-select=”true”
data-height=”460”
data-search=”true”
data-toggle=”table”
data-url=”{{ ‘/assets/json/table_data.json’ | relative_url }}”
>
<thead>
<tr>
<th data-checkbox="true"></th>
<th data-field="id" data-halign="left" data-align="center" data-sortable="true">ID</th>
<th data-field="name" data-halign="center" data-align="right" data-sortable="true">Item Name</th>
<th data-field="price" data-halign="right" data-align="left" data-sortable="true">Item Price</th>
</tr>
</thead>
</table>
```
# # #
<table
data-click-to-select=”true”
data-height=”460”
data-search=”true”
data-toggle=”table”
data-url=”/assets/json/table_data.json”>
<thead>
<tr>
<th data-checkbox="true"></th>
<th data-field="id" data-halign="left" data-align="center" data-sortable="true">ID</th>
<th data-field="name" data-halign="center" data-align="right" data-sortable="true">Item Name</th>
<th data-field="price" data-halign="right" data-align="left" data-sortable="true">Item Price</th>
</tr>
</thead>
</table>