2010-03-29 3 views
1

Mon html est comme ceSortTable ul li obtenir pour

<ul> 
    <li>...</li> 
    <li> 
     <ul> 
      <li>...</li> 
     </ul> 
    </li> 
</ul> 

Ceci est juste un exemple, un ul peut contenir beaucoup li mais la profondeur maximale est ul li ul comme dans l'exemple

J'utilise JqueryUI Sortable à trier ce li Je veux obtenir l'ordre de tri du li pour le stocker dans la base de données afin que l'utilisateur n'a pas à trier à chaque fois.

Merci.

Répondre

2

Vous devrez lier l'événement "sortupdate" que vous pouvez utiliser pour mettre à jour votre base de données. La prochaine fois que la page est chargée, vous devez trier les éléments sur le serveur.

EDIT:

Ce qui suit lie l'événement sortupdate et l'envoyer à/histoire/Réorganiser (www.asdf.com/sort/reorder?ids=somevalue & oldIds = uneautrevaleur). Cette page va le stocker dans la base de données.

Vous avez probablement ajouter une autre variable pour transmettre l'ID utilisateur de la personne qui connecté

$("#sortable").bind('sortupdate', function(event, ui) { 
    var ids = $("#sortable").sortable('serialize').toString(); 
    $.post('/story/reorder', {ids: ids, oldIds: idsOldOrder}, function(data) { 
     // nothing special 
     window.alert(data); 
    }); 
    idsOldOrder = ids; 
}); 

Source:. http://www.gridshore.nl/2009/09/14/creating-a-sortable-list-of-items-using-jquery/

+0

Toute utilisation exemple? 'update: function (event, ui) {......}' J'ai vu ça mais je n'arrive pas à comprendre l'application, new to javascript. – Shishant

+1

Bien sûr, mis à jour ma réponse. – Fabian

Questions connexes