[RESOLU] Souci id draggable

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Souci id draggable

Re: Souci id draggable

par cyrilj » 30 nov. 2012, 17:20

Super !!!!!! Merci, ça fonctionne ;)
Satanées quotes ^^

Re: Souci id draggable

par Saian » 30 nov. 2012, 16:26

Alors oui petite erreur dans mon code c'est avec des quotes autour de id (sinon id est considéré comme une variable qui n'existe pas donc undefined) :
[javascript]$(this).attr('id')[/javascript]

EDIT d'après la doc (et si je l'interprète comme il faut) ui a 3 propriétés helper, offset et position. Visiblement draggable n'en fait pas parti. La bonne propriété semblerai plutôt être helper mais à priori sans avoir testé je pense que le $(this) doit faire référence au bon élément (mais quand il sera dans la fonction handleDragStop peut être y aura t il une subtilité avec le this qui ne ferait plus référence au bon élément).

Re: Souci id draggable

par cyrilj » 30 nov. 2012, 16:02

TOujours l'erreur 'id is not defined'.
De plus, je veux que l'id soit générer dynamiquement (je le mettrai dans une fonction qui me récupèrera les coordonnées x et y).

La fonction finale devra ressembler à ceci :

Code : Tout sélectionner

<script> $(function( event, ui ) { $( "#draggable4" ).draggable({ grid: [ 20,20 ], containment: '#animation', stop: handleDragStop } }); }); function handleDragStop( event, ui ) { var offsetXPos = parseInt( ui.offset.left ); var offsetYPos = parseInt( ui.offset.top ); var objet_drop = $(ui.draggable); // L'élément drop var id_objet = objet_drop.attr('id'); // ID de l'élément drop $.ajax({ type: "GET", url: "majpos.php", data: "posX="+offsetXPos+"&posY="+offsetYPos+"&ID="+id_objet }); alert( "Drag stopped!\n\nOffset: (" + offsetXPos + ", " + offsetYPos + ", " + id_objet + ")\n"); } </script>
Et à chaque fois, l'id_objet me retourne "undefined" :/ alors que offsetXPos et offsetYPos s'affichent correctement.

Re: Souci id draggable

par Saian » 30 nov. 2012, 15:47

Pourquoi pas un $(this).attr(id) ?
[javascript]$( "#draggable4" ).draggable({
grid: [ 20,20 ],
containment: '#animation',
stop: function( event, ui ) {
alert( "Drag stopped!\n\nOffset: (" + $(this).attr(id) + ")\n");
// voir même alert( "Drag stopped!\n\nOffset: (draggable4)\n"); étant donné que ce code s'applique à cet élément.
}
});[/javascript]

Souci id draggable

par cyrilj » 30 nov. 2012, 15:33

Bonjour à tous

j'essaie de récupérer l'id d'un objet draggable, ce qui parait apparemment très simple. J'ai beau tourner ma fonction dans tous les sens, rien ne s'affiche.

Code : Tout sélectionner

$( "#draggable4" ).draggable({ grid: [ 20,20 ], containment: '#animation', stop: function( event, ui ) { var objet_drop = $(ui.draggable); // L'élément drop var id_objet = objet_drop.attr('id'); // ID de l'élément drop alert( "Drag stopped!\n\nOffset: (" + id_objet + ")\n"); } });
Il me retourne toujours la valeur "undefined" au lieu de "draggable4".
Merci pour votre aide.

Cyril