我不明白为什么我无法对表格行进行排序。我可以对列表进行排序,但是表有问题。 这是我的桌子:
<table class="table table-sm" id="tilbehor_table">
<tbody>
<tr>
<th>Navn</th>
<th>Pris</th>
<th></th>
</tr>
<tr id="tilline_1">
<td>Nina nattbord Hvitmalt</td>
<td>1195</td>
<td>
<button type="button" class="btn btn-outline-secondary btn-sm tilsorthandle" title="Endre rekkefølge"><span data-feather="menu"></span></button>
</td>
</tr>
<tr id="tilline_2">
<td>Odel gavl rutet 150 cm Skumring blå</td>
<td>3995</td>
<td>
<button type="button" class="btn btn-outline-secondary btn-sm tilsorthandle" title="Endre rekkefølge"><span data-feather="menu"></span></button>
</td>
</tr>
</tbody>
</table>
这是我的JS:
$('#tilbehor_table tbody').sortable({ axis: "y", handle: ".tilsorthandle" });
运行js时,我可以看到可排序的类已添加到表中,但是我无法使用处理程序来单击和拖动行。
答案 0 :(得分:1)
在sortable中有一个cancel选项,默认情况下设置为"input,textarea,button,select,option"
。根据文档,cancel
选项执行以下操作。
Prevents sorting if you start on elements matching the selector.
因此,如果使用这些默认选择器进行排序,则可以防止排序。将cancel选项的值设置为空字符串即可。
$('#tilbehor_table tbody').sortable({ axis: "y", handle: ".tilsorthandle", cancel: ''});