Jquery Sortable - хотите исключить специфические элементы, которые имеют этот определенный класс - PullRequest
0 голосов
/ 18 января 2019

У меня есть три Unorder список sourceList, destinationAcceptTest, destinationDontAcceptTest.

Тогда элемент sourceList имеет четыре элемента

и два элемента с классом «test».

Элемент destinationAcceptTest примет все элементы.

Но когда я перетаскиваю один или несколько элементов списка из sourceList в элемент списка «destinationDontAcceptTest», он не должен принимать элемент

, который имеет класс «test».

HTML:

jQuery( "#sourceList, #destinationAcceptTest,#destinationDontAcceptTest").on('click', 'li', function (e) 
{  
  jQuery(this).toggleClass("selected");
}).sortable({ 
    connectWith: "#sourceList,#destinationAcceptTest",destinationDontAcceptTest
    receive: function(event, ui) 
    {
      var receiverId = jQuery(this).closest("#sourceList,#destinationAcceptTest,#destinationDontAcceptTest").attr('id');
      if(receiverId == "destinationDontAcceptTest" && $(ui.item).hasClass("test"))
      {
        ui.sender.sortable("cancel");
      }
     }

}).disableSelection();
<ul id="sourceList"  multiple>
  <li class="test">Number 1</li>
  <li class="include">Number 2</li>
  <li class="test">Number 3</li>
  <li class="include">Number 4</li>					
</ul>

<ul id="destinationAcceptTest"  multiple>		
</ul>

<ul id="destinationDontAcceptTest"  multiple>
</ul>
...