index.html 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset=utf-8 />
  5. <title></title>
  6. </head>
  7. <link href='../demo/style.css' rel='stylesheet'>
  8. <link href='../tablesort.css' rel='stylesheet'>
  9. <body>
  10. <table id='sort'>
  11. <thead>
  12. <tr>
  13. <th>#</th>
  14. <th>Name</th>
  15. <th>Birthday</th>
  16. <th>Grocery item</th>
  17. <th>Price</th>
  18. <th>Version</th>
  19. <th>Filesize</th>
  20. <th>Insensitive</th>
  21. <th>data-sort</th>
  22. <th data-sort-method="monthname">Monthname</th>
  23. <th aria-sort="descending">Descending</th>
  24. </tr>
  25. </thead>
  26. <tbody>
  27. <tr>
  28. <td>2</td>
  29. <td>Gonzo the Great</td>
  30. <td>12-2-70</td>
  31. <td>Radishes</td>
  32. <td>63€</td>
  33. <td>31.0.1650.57</td>
  34. <td>124k</td>
  35. <td>B</td>
  36. <td data-sort='b'>3</td>
  37. <td>February</td>
  38. <td>2</td>
  39. </tr>
  40. <tr>
  41. <td>1</td>
  42. <td>Ernie</td>
  43. <td>10/11/69</td>
  44. <td>Fish</td>
  45. <td>£2.79</td>
  46. <td>11.0.1</td>
  47. <td>134.56 GB</td>
  48. <td>1</td>
  49. <td data-sort='a'>2</td>
  50. <td>April</td>
  51. <td>1</td>
  52. </tr>
  53. <tr>
  54. <td>3</td>
  55. <td>Bert</td>
  56. <td>10/11/1969</td>
  57. <td>Broccoli</td>
  58. <td>$0.79</td>
  59. <td>18.0.1284.49</td>
  60. <td>134 B</td>
  61. <td>A</td>
  62. <td data-sort='c'>1</td>
  63. <td>January</td>
  64. <td>3</td>
  65. </tr>
  66. </tbody>
  67. </table>
  68. <table id='sort-descend'>
  69. <thead>
  70. <tr>
  71. <th>Numbers descending</th>
  72. <th aria-sort="ascending">Ascending column</th>
  73. </tr>
  74. </thead>
  75. <tbody>
  76. <tr>
  77. <td>2</td>
  78. <td>2</td>
  79. </tr>
  80. <tr>
  81. <td>1</td>
  82. <td>1</td>
  83. </tr>
  84. <tr>
  85. <td>3</td>
  86. <td>3</td>
  87. </tr>
  88. </tbody>
  89. </table>
  90. <table id='sort-exclude'>
  91. <thead>
  92. <tr>
  93. <th data-sort-method='none'>Column exclusion</th>
  94. <th>Row exclusion</th>
  95. </tr>
  96. </thead>
  97. <tbody>
  98. <tr>
  99. <td>2</td>
  100. <td>2</td>
  101. </tr>
  102. <tr data-sort-method='none'>
  103. <td>1</td>
  104. <td>1</td>
  105. </tr>
  106. <tr>
  107. <td>3</td>
  108. <td>3</td>
  109. </tr>
  110. </tbody>
  111. </table>
  112. <table id='sort-default'>
  113. <thead>
  114. <tr><th data-sort-default>Sort on initialization</th></tr>
  115. </thead>
  116. <tbody>
  117. <tr><td>2</td></tr>
  118. <tr><td>1</td></tr>
  119. <tr><td>3</td></tr>
  120. </tbody>
  121. </table>
  122. <table id='sort-refresh'>
  123. <thead>
  124. <tr><th data-sort-default>Refresh method</th></tr>
  125. </thead>
  126. <tbody>
  127. <tr><td>2</td></tr>
  128. <tr><td>1</td></tr>
  129. <tr><td>3</td></tr>
  130. </tbody>
  131. </table>
  132. <table id="sort-multi">
  133. <thead>
  134. <tr><th>Multi</th></tr>
  135. </thead>
  136. <tbody>
  137. <tr><td>2</td></tr>
  138. <tr><td>1</td></tr>
  139. <tr><td>3</td></tr>
  140. </tbody>
  141. <tbody>
  142. <tr><td>3</td></tr>
  143. <tr><td>2</td></tr>
  144. <tr><td>4</td></tr>
  145. </tbody>
  146. </table>
  147. <table id="sort-row-set">
  148. <thead>
  149. <tr data-sort-method='thead'><th>Sort Row</th></tr>
  150. <tr><th>Not Sort Row</th></tr>
  151. </thead>
  152. <tbody>
  153. <tr><td>2</td></tr>
  154. <tr><td>1</td></tr>
  155. <tr><td>3</td></tr>
  156. </tbody>
  157. </table>
  158. <table id="sort-row-auto">
  159. <thead>
  160. <tr><th>Not Sort Row</th></tr>
  161. <tr><th>Sort Row</th></tr>
  162. </thead>
  163. <tbody>
  164. <tr><td>2</td></tr>
  165. <tr><td>1</td></tr>
  166. <tr><td>3</td></tr>
  167. </tbody>
  168. </table>
  169. <table id="sort-column-keys">
  170. <thead>
  171. <tr>
  172. <th class="sort-header" colspan="2">Column 1</th>
  173. <th >Column 2</th>
  174. <th id="third-header" data-sort-column-key="third">Column 3</th>
  175. </tr>
  176. </thead>
  177. <tbody>
  178. <tr class="no-sort">
  179. <td colspan="3">2</td>
  180. <td data-sort-column-key="third">2</td>
  181. </tr>
  182. <tr>
  183. <td colspan="2">3</td>
  184. <td>3</td>
  185. <td data-sort-column-key="third">3</td>
  186. </tr>
  187. <tr>
  188. <td colspan="2">1</td>
  189. <td>1</td>
  190. <td data-sort-column-key="third">1</td>
  191. </tr>
  192. </tbody>
  193. </table>
  194. <table id="sort-custom-attribute">
  195. <thead>
  196. <tr>
  197. <th>Heros</th>
  198. </tr>
  199. </thead>
  200. <tbody>
  201. <tr>
  202. <td data-realname="Tony Stark">Iron Man (Tony Stark)</td>
  203. </tr>
  204. <tr>
  205. <td data-realname="Peter Parker">Spider-Man (Peter Parker)</td>
  206. </tr>
  207. <tr>
  208. <td data-realname="Natasha Romanoff">Black Widow (Natasha Romanoff)</td>
  209. </tr>
  210. <tr>
  211. <td data-realname="Steve Rogers">Captain America (Steve Rogers)</td>
  212. </tr>
  213. </tbody>
  214. </table>
  215. <script src='tape.js'></script>
  216. <script src='../src/tablesort.js'></script>
  217. <script src='../src/sorts/tablesort.dotsep.js'></script>
  218. <script src='../src/sorts/tablesort.filesize.js'></script>
  219. <script src='../src/sorts/tablesort.date.js'></script>
  220. <script src='../src/sorts/tablesort.number.js'></script>
  221. <script src='../src/sorts/tablesort.monthname.js'></script>
  222. <!-- Tests -->
  223. <script>
  224. table = document.getElementById('sort');
  225. tableDescend = document.getElementById('sort-descend');
  226. tableExclude = document.getElementById('sort-exclude');
  227. tableDefault = document.getElementById('sort-default');
  228. tableRefresh = document.getElementById('sort-refresh');
  229. tableMulti = document.getElementById('sort-multi');
  230. tableSortRowSet = document.getElementById('sort-row-set');
  231. tableSortRowAuto = document.getElementById('sort-row-auto');
  232. tableSortColumnKeys = document.getElementById('sort-column-keys');
  233. tableSortCustomAttr = document.getElementById('sort-custom-attribute');
  234. new Tablesort(table);
  235. new Tablesort(tableDescend, { descending: true });
  236. new Tablesort(tableExclude);
  237. new Tablesort(tableDefault);
  238. new Tablesort(tableMulti);
  239. new Tablesort(tableSortRowSet);
  240. new Tablesort(tableSortRowAuto);
  241. new Tablesort(tableSortColumnKeys);
  242. new Tablesort(tableSortCustomAttr, { sortAttribute: "data-realname" });
  243. var refresh = new Tablesort(tableRefresh);
  244. var rowCount = tableRefresh.rows.length;
  245. var row = tableRefresh.insertRow(rowCount);
  246. var cellName = row.insertCell(0);
  247. cellName.innerHTML = 0;
  248. refresh.refresh();
  249. </script>
  250. <script src='spec/tablesort.js'></script>
  251. <script src='spec/dotsep.js'></script>
  252. <script src='spec/multibody.js'></script>
  253. <script src='spec/filesize.js'></script>
  254. <script src='spec/date.js'></script>
  255. <script src='spec/number.js'></script>
  256. <script src='spec/monthname.js'></script>
  257. </body>
  258. </html>