Bonjour,
J'utilise UI sortable pour un système de drag and drop assez complexe.
Je voudrais simplement implémenter une fonction STOP, c'est à dire appeler cette fonction après qu'un élément ait été déplacé.
Ici, j'arrive à afficher le parent de l'élément que je bouge. Si cet élément est égale à rien du tout ( donc si l'élément déplacé se retrouve sans parent), je voudrais annuler le déplacement.
Donc pour le moment dans la console,j'arrive à afficher le parent de l'élément déplacé grâce à ui.item.parent("ul").attr('id'))
Je voudrais donc faire un test et si ce élément est vide, on annule le déplacement, limite meme faire une alert. Si je met un if dans la fonction stop: plus rien ne fonctionne.
Du coup, j'ai essayé ce que je trouve un peu partout sur le net genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 $('#example-1-3 .sortable-list').sortable({ connectWith: '#example-1-3 .sortable-list', placeholder: 'placeholder', start: function(event, ui) { // le texte de l'élément déplacé console.log("start : ui.item.text() = " + ui.item.text()); // la position initiale de l'élément déplacé + 1 pour obtenir de 1 à n console.log('start : $(this).children("li").index(ui.item) = ', $(this).children("li").index(ui.item) + 1); }, stop: function(event, ui) { // le texte de l'élément déplacé console.log("stop : ui.item.text() = " + ui.item.text()); // la position finale de l'élément déplacé + 1 pour obtenir de 1 à n console.log('stop : $(this).children("li").index(ui.item) = ', ui.item.parent("ul").attr('id')); } });
pour avoir une alert dès que le mouvement est effectif. Le seule truc que j'arrive à faire, c'est de faire apparaitre le parent dans la console. J'arrive à rien sans la console.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $( ".#example-1-3 .sortable-list" ).bind( "dragstop", function(event, ui) { alert("i"); });
Je voudrais bien un coup de pouce avt de me noyer dans les toilettes :p:p
mercii
Partager