2010-01-21 3 views
0

J'essaie de comprendre comment écrire une instruction qui arrêtera la fonction jQuery droppable si l'élément déplacé est le parent.jquery droppable accepter où pas parent

Fondamentalement ce que j'ai est une table, et chaque cellule a l'id de l'axe des x: eq + '-' + y-axe: éq. (x sur-x-bas). Lorsque l'utilisateur déplace un élément vers une cellule différente, je mets à jour les informations, donc si vous faites glisser de la cellule 3-3 à 3-4, je mets à jour les données.

Toutefois, si l'utilisateur commence à glisser de 3-3, puis arrête de glisser encore dans la cellule 3-3, je veux empêcher la fonction droppable de tirer.

que je cherchais à l'aide de la « accepter » la fonction, mais ne peut pas comprendre comment dire! JQuery (« # td 3-3 »)

Voici ce que j'ai

 
jQuery('div','table').draggable({axis:'y', containment: 'table'}); 
var cellId=jQuery(this).parents('td').attr('id'); 
jQuery('td','table').droppable({ 
      accept : !jQuery('td#'+cellId), 
      drop: function(){ 
       jQuery.ajax({ update stuff in db}); 
      } 

     }); 

Répondre

2

essayer

$('.myselector').droppable({ accept: 'td:not(#' + cellId +')' }); 
+0

qui est probablement correct, mais ressemble a besoin d'un peu plus. quand j'utilise ce code, la fonction drop n'est pas déclenchée, même si elle est déplacée sur une autre cellule. – pedalpete