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;
}
}
})
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
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. –