Почему моя сортируемая таблица jqueryui не работает? - PullRequest
1 голос
/ 21 октября 2019

Я не понимаю, почему я не могу отсортировать строки таблицы. У меня сортируемая работа со списками, но что-то не так с моей таблицей. Вот моя таблица:

<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&nbsp;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, я вижу, что сортируемые классы добавляются в таблицу, но яневозможно использовать обработчик для щелчка и перетаскивания строк.

1 Ответ

1 голос
/ 21 октября 2019

В сортируемом параметре отмены по умолчанию установлено значение "input,textarea,button,select,option". Согласно документации, опция cancel делает следующее.

 Prevents sorting if you start on elements matching the selector.

Таким образом, сортировка здесь запрещена, если для сортировки используются эти селекторы по умолчанию. Установите значение параметра отмены в пустую строку, и оно работает.

   $('#tilbehor_table tbody').sortable({ axis: "y", handle: ".tilsorthandle", cancel: ''});
...