2010-02-24 24 views
12

Về cơ bản tôi có một danh sách có thể kéo được kết nối với một danh sách có thể sắp xếp. Các công trình lớn ngoại trừ tôi cần một số loại sự kiện thả mà tôi có thể sử dụng để thay đổi mục danh sách sau khi nó được thả vào danh sách có thể sắp xếp.Kết hợp sự kiện sắp xếp và thả jQuery với nhau

Tính năng này hoạt động với .draggable -> .droppable nhưng có bản sửa lỗi cho có thể kéo -> .sortable?

Trả lời

17

Đã tìm ra, có một sự kiện nhận được giống như sự sụt giảm cho phân đoạn.

$('.selector').sortable({ 
    receive: function(event, ui) { ... } 
}); 
+6

Nếu tôi đang sử dụng khả năng kéo với trình trợ giúp: tùy chọn sao chép có cách để nhắm mục tiêu các mục tôi đang bỏ. Khi tôi sử dụng ui.item nó thay đổi mục cũ, trong khi ui.helper dường như không làm gì cả. – mike

+0

Tôi có cùng một vấn đề. Tôi không thể nhắm mục tiêu các mục tôi đang bỏ. Tôi đã thử cả hai 'dừng' trên kéo và 'nhận' trên sắp xếp. – rolnn

+0

Cách duy nhất tôi có thể làm điều đó với 'nhân bản là bằng cách đặt tên lớp cho vùng chứa có thể kéo và sau đó sử dụng jquery để nhắm mục tiêu tên lớp đó trong vùng chứa có thể sắp xếp. – rolnn

6

Tại sao bạn không sử dụng 2 danh sách có thể sắp xếp được kết nối? Sau đó, bạn có thể sử dụng các sự kiện dừng

Bạn có thể kết nối 2 danh sách bằng cách thực hiện:

$("#sortable1, #sortable2").sortable({ 
     connectWith: '.connectedSortable' 
}).disableSelection(); 

Và sau đó sử dụng các sự kiện dừng

$(".selector").sortable({ 
    stop: function(event, ui) { ... } 
}); 

Sau đó bạn có thể thay đổi các yếu tố giảm bằng cách làm ui. (không biết điều này bằng trái tim nhưng với plugin có thể kéo của nó ui.draggable)

Các vấn đề liên quan