2010-11-23 13 views
1

Je me demandais comment ou s'il est possible de passer une variable de 'start:' à 'update:' dans la fonction ci-dessous, sans rendre la variable globale?passant jQuery ui variable triable

Merci.

$('.type').sortable({ 
      placeholder: 'entityHighlight', 
      cancel: '.disabled', 
      opacity: 0.9, 
      revert: true, 
      scroll: true, 
      start:function(event,ui) { 
       startPos = ui.item.index(); 
      }, 
      update: function(event,ui) { 
       var endPos = ui.item.index(); 
       var entityId = ui.item.attr('id'); 
       voteRank(entityId,startPos,endPos); 
      } 
     }).disableSelection(); 

Répondre

3

Vous pouvez utiliser jQuery de data dans start comme ceci:

ui.item.data('startPos', ui.item.index()); 

puis le lire dans update comme ceci:

voteRank(entityId, ui.item.data('startPos'), endPos); 

(édité de sorte que vous pouvez réellement utiliser maintenant)

+0

Score, encore plus facile maintenant. Je vous remercie. – meow

+0

Un grand merci a travaillé pour moi! – Notorious