2012-03-31 11 views
8

Sto cercando un modo per attivare l'evento dal ripristino dello stato se qualcosa non convalida, ad esempio se l'elemento non esiste lo creerà da un altro elenco, ma se esiste già dovrebbe andare in else e restituire l'elemento nella sua posizione originale:Come impostare jquery-ui draggable ripristinare true se dopo una convalida decido di spostare l'elemento indietro?

$("#catalog ul").droppable({ 
     tolerance: 'fit', 
     activeClass: "ui-state-default", 
     hoverClass: "ui-state-hover", 
     accept: ":not(.ui-sortable-helper)", 
     drop: function(event, ui) { 
      //check if already exists 
      if($(this).find("#"+$(ui.draggable).attr("id")).length==0){ 
       $("<li id="+$(ui.draggable).attr("id")+"></li>").text(ui.draggable.text()).appendTo(this) 
       .draggable({ 
        revert: 'invalid', 
        stop: function(){ 
         $(this).draggable('option','revert','invalid'); 
        } 
       }).droppable({ 
        greedy: true, 
        tolerance: 'touch', 
        drop: function(event,ui){ 
         ui.draggable.draggable('option','revert',true); 
        } 
       }); 
      }else{ 
       //want to make the object go back by setting true to revert 
       return false; 
      } 
     } 
    }) 
+1

Non importa, l'ho trovato dopo aver esaminato l'intero codice ho solo messo ui.draggable.draggable ('opzione', 'revert', vero) all'interno del resto. Wow ci stava provando da quasi un giorno, lol. Solo rispondendo alla mia domanda se qualcuno non presta attenzione come me e ottiene lo stesso problema. – kenji

+0

kenji, il modo corretto di rispondere alla tua stessa domanda (che è perfettamente a posto su SO!) È di farlo letteralmente: posta una risposta qui sotto, poi due giorni dopo (SO ti fa aspettare), rendi la risposta accettata. –

risposta

11

grazie Kenji, questo funziona davvero:

ui.draggable.draggable('option','revert',true); 

ho anche lottato con questo per una mattina fino a trovare il tuo post, grazie

0
.droppable({ 
    greedy: true 
} 

questa opzione è necessariamente anche bisogno

Problemi correlati