如何禁止任何 li 被排序?

How to Disable Any li From Being Sortable?

我试图将 class unsortableli 项目设置为在 jQuery 可排序 plugin 中不可排序,但在全部.

从文档 link 上面说

.sortable("disable")

Disable all instantiated sortables in the set of matched elements

所以,我在我的代码中这样尝试过:

$(document).ready(function(){
  $('ol.example').sortable();
  $('ol.example li.unsortable').sortable('disable');
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://johnny.github.io/jquery-sortable/js/jquery-sortable-min.js"></script>

<ol class="example">
  <li class="unsortable">Option1 (unsorted)</li>
  <li>Option2</li>
  <li>Option3</li>
 </ol>

但是,即使我使用 .sortable('disable').

,Option1(不可排序)也是可排序的

哪里不对,我该如何解决?谢谢。

如果我没记错的话,disable应该用于容器,但是你可以使用exclude:

$(document).ready(function(){
  $('ol.example').sortable({exclude: '.unsortable'});
})

$(document).ready(function(){
  $('ol.example').sortable({exclude: '.unsortable'});
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://johnny.github.io/jquery-sortable/js/jquery-sortable-min.js"></script>

<ol class="example">
  <li class="unsortable">Option1 (unsorted)</li>
  <li>Option2</li>
  <li>Option3</li>
 </ol>