--- title: "How to sort the contents of a table" slug: "how-to-sort-the-contents-of-a-table" description: "Sorting is a great option to have when you provide data artifacts in the table. " tags: ["Customization"] updated: 2026-09-17T13:56:23Z published: 2026-09-17T13:56:23Z canonical: "docs.document360.com/how-to-sort-the-contents-of-a-table" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.document360.com/llms.txt > Use this file to discover all available pages before exploring further. # How to sort the contents of a table Adding sortable columns to your tables lets readers reorder table content by clicking any column header. Clicking a header once sorts ascending (▴); clicking again sorts descending (▾). The implementation requires two additions to your Custom CSS & JavaScript settings, a CSS snippet that styles the sort indicators, and a JavaScript snippet that handles the sort logic. --- ## When to use sortable tables - **Reference tables with many rows**: sorting lets readers quickly find the entry they are looking for rather than scanning the entire table. - **Comparison tables**: readers can sort by any attribute (price, name, feature availability) to compare options on their own terms. - **Data-heavy articles**: sorting reduces the need for readers to request a filtered or reordered version of the data. NOTE This implementation applies to **all tables** across your Knowledge Base site. Sorting is triggered by the reader clicking any column header. The sort icon in the header indicates the current sort direction — ascending (▴) or descending (▾). --- ## How to add sortable columns to tables This requires two steps: adding the CSS for visual indicators, then adding the JavaScript for the sort logic. ### Add the CSS 1. In the Knowledge Base portal, go to **Settings** > **Knowledge base site** > **Custom CSS & JavaScript**.  1. Select the **CSS** tab and paste the following snippet: ``` table th { cursor: pointer; } table .th-sort-asc::after { content: "\25b4"; } table .th-sort-desc::after { content: "\25be"; } table .th-sort-asc::after, table .th-sort-desc::after { margin-left: 5px; } table .th-sort-asc, table .th-sort-desc { background: rgba(0, 0, 0, 0.1); } ``` 1. Click **Save**.  ### Add the JavaScript 1. In the same **Custom CSS & JavaScript** settings page, select the **JavaScript** tab. 2. Paste the following snippet: ``` /** * Sorts a HTML table. * * @param {HTMLTableElement} table The table to sort * @param {number} column The index of the column to sort * @param {boolean} asc Determines if the sorting will be in ascending */ function sortTableByColumn(table, column, asc = true) { const dirModifier = asc ? 1 : -1; const tBody = table.tBodies[0]; // Sort only data rows (rows with