Click To Load

This example shows how to implement click-to-load the next page in a table of data. The crux of the demo is the final row:

<tr id="replaceMe">
  <td colspan="3">
    <button class='btn' hx-get="/contacts/?page=2" 
                        hx-target="#replaceMe" 
                        hx-swap="outerHTML">
         Load More Agents... <img class="htmx-indicator" src="/img/bars.svg">
    </button>
  </td>
</tr> 

This row contains a button that will replace the entire row with the next page of results (which will contain a button to load the next page of results). And so on.

Server Requests ↑ Show
HTML
<table><thead><tr><th>Name</th><th>Email</th><th>ID</th></tr></thead><tbody>
                <tr><td>Agent Smith</td><td>void10@null.org</td><td>CG7D7GD6D2AFE9F</td></tr>
<tr><td>Agent Smith</td><td>void11@null.org</td><td>11E5DG8F18D55A7</td></tr>
<tr><td>Agent Smith</td><td>void12@null.org</td><td>DG81B4E81E573C8</td></tr>
<tr><td>Agent Smith</td><td>void13@null.org</td><td>FD483517B0G7D38&...

Demo

Name Email ID
Agent Smith void10@null.org CG7D7GD6D2AFE9F
Agent Smith void11@null.org 11E5DG8F18D55A7
Agent Smith void12@null.org DG81B4E81E573C8
Agent Smith void13@null.org FD483517B0G7D38
Agent Smith void14@null.org G613GF132912D86
Agent Smith void15@null.org 6G0A080F1771F71
Agent Smith void16@null.org 4GA4EFCD9BABGE0
Agent Smith void17@null.org 5234AE6C758G27E
Agent Smith void18@null.org 8C3G432A116C132
Agent Smith void19@null.org F8548BEA0E321DB