我正在使用这个表排序程序:https://github.com/tristen/tablesort
但是,当我查看此页面时,我无法对列进行排序。Chrome dev tools显示Uncaught Error: Element must be a table at new Tablesort (tablesort.js:6) at mytable.html:12
我假设这张表:
<table id='mytable'> 这段代码
document.getElementById('mytable')
都引用了相同的'mytable‘。我把这个假设建立在'table-id‘上,如下所示:http://tristen.ca/tablesort/demo
<!DOCTYPE html>
<html>
<head>
<script src='./src/tablesort.js'></script>
<script src='./src/sorts/tablesort.number.js'></script>
<script src='./src/sorts/tablesort.date.js'></script>
<link href='./demo/style.css' rel='stylesheet'>
<link href='tablesort.css' rel='stylesheet'>
</head>
<body>
<script> new Tablesort(document.getElementById('mytable')); </script>
<table id='mytable' class="sort" border = "1">
<thead>
<tr>
<th>Name</th>
<th data-sort-method='number'>Age</th>
<!-- <th>Age</th> -->
</tr>
<tr>
<td>Ramesh Raman</td>
<td>22</td>
</tr>
<tr>
<td>Shabbir Hussein</td>
<td>32</td>
</tr>
</thead>
</table>
</body>
</html>发布于 2018-12-11 13:37:07
它不起作用,因为脚本标记在主体之前加载。将代码放在window.onload中:
window.onload = function() {
new Tablesort(document.getElementById('mytable'));
}您也可以将脚本标记放在正文的底部,因为它将最后加载,因此能够找到表。
https://stackoverflow.com/questions/53717941
复制相似问题