Utilisation de la méthode sortable () et envoi d’URL de données par jQuery

Je deux morceaux de code qui fonctionnent tous les deux. Malheureusement, ils ne travaillent pas ensemble.

$(document).ready(function() { $("#ui-sortable").live('hover', function() { **var ssortingng = ''; var folders = $("[name^='note-behaviour-folder-add']"); for(var x = 0; x < folders.length; x++){ if ((folders[x].type === "checkbox") && (folders[x].checked)) { string = string.concat("&folders[]=" + folders[x].value); } }** $("#ui-sortable").sortable({ update: function () { $.ajax({ type: "POST", url: base_url + "behaviours/folders/jq_set_folder_behaviour_order", data: "&note_id=" + $("#ui-sortable").data("note") + string }); } }); }); }); 

J’ai besoin de savoir comment faire en sorte que le code soit marqué en caractères gras dans le contexte de la méthode sortable ().

Ici, le code en gras fait une chose (il saisit les valeurs des cases à cocher qui ont été sortingées), mais il ne rapporte pas ses données qu’après, ce qui signifie que les données de sorting envoyées sont celles qui les ont précédées.

Des idées?

Rassemblez votre chaîne de requête dans le rappel “update”. Ceci est probablement le plus souvent appelé avant que le sorting ait lieu:

 $(document).ready(function() { $("#ui-sortable").live('hover', function() { $("#ui-sortable").sortable({ update: function () { var ssortingng = ''; var folders = $("[name^='note-behaviour-folder-add']"); for(var x = 0; x < folders.length; x++){ if ((folders[x].type === "checkbox") && (folders[x].checked)) { string = string.concat("&folders[]=" + folders[x].value); } } $.ajax({ type: "POST", url: base_url + "behaviours/folders/jq_set_folder_behaviour_order", data: "&note_id=" + $("#ui-sortable").data("note") + string }); } }); }); });