2011-07-07 34 views
5

Tôi có một danh sách được điền thông qua ajax. Danh sách này tôi có thể thêm và xóa các mục thông qua ajax và cũng sắp xếp chúng. Tôi có hai vấn đề với nó.Chức năng có thể sắp xếp khi nội dung được cập nhật qua ajax

Người đầu tiên là ở đây và nó vẫn còn chưa được giải quyết: https://stackoverflow.com/questions/6370213/jquery-dynamic-dragn-drop-doesnt-update-order (sau khi phân loại danh sách số lượng các mặt hàng đến từ các cơ sở dữ liệu sẽ không cập nhật cho đến khi tôi làm mới)

Điều thứ hai là tồi tệ hơn. Sau khi tôi cập nhật các nội dung trong danh sách của mình thông qua ajax (nói tôi thêm một mục mới), chức năng sắp xếp sẽ ngừng hoạt động cho đến khi tôi tải lại trang. Có vẻ như .live sẽ không hoạt động với sắp xếp và tôi không có ý tưởng với cái này. Tôi sẽ thêm một số mã của tôi:

danh sách của tôi đi như thế này:

<ul id="listaruta"> 
    <li> ... </li> 
</ul> 

Kịch bản của tôi cho các hạng mục sắp xếp:

$(function() { 
    $("ul#listaruta").sortable({ 
     opacity: 0.6, 
     cursor: 'move', 
     update: function() { 
      var order = $(this).sortable("serialize") + '&action=updateRecordsListings'; 
      $.post("/plugins/drag/updateDB.php", order);                
    }         
    }); 
}); 

Tôi đang sử dụng này cho các chức năng sắp xếp: http://www.webresourcesdepot.com/wp-content/uploads/file/jquerydragdrop/

Trả lời

7

Sau khi tìm kiếm nhiều hơn, tôi thấy đây là câu trả lời của tôi: jQuery live and sortable

Đây là những gì tôi đã thêm vào mã của mình để mã hoạt động:

$(document).ajaxSuccess(function() { 

    $("ul#listaruta").sortable({ 
     opacity: 0.6, 
     cursor: 'move', 
     update: function() { 
      var order = $(this).sortable("serialize") + '&action=updateRecordsListings'; 
      $.post("/plugins/drag/updateDB.php", order); 
     } 
    }); 
}); 
+0

Cảm ơn bạn! Điều này đã làm tôi thất vọng! : D – freeworlder

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