2009-06-08 9 views
2

私はクラスxのリストを持ち、そのリストにはクラスyのリストがいくつかあります。jQuery Sortable - イベントがあまりにも多く呼び出されました

サブリスト自身の順序を調整することも可能である他のサブリスト

のいずれかにサブリストのいずれかから項目をドラッグすることが可能です。

私はソート可能

て発射されたイベントに苦しんだが受信 - 何かが別の場所からリストに持ち込まれたときにのみ(サブリスト内の項目を配置するか、サブリストに自分自身を配置するので、何も良い)をトリガしません

更新 - アイテムをサブリストAからサブリストBにドラッグすると(サブリストAが更新され、サブリストBが更新されていると仮定して)、複数回トリガするようです。

私は自分のJSにリストとサブリストの現在のレイアウトをデータベースに同期させる機能を持っています。これを一度に複数回行いたくありません。

これらのイベントを組み合わせても、まったく目的の動作が得られないようです。これは適切なルートですか?または、私は5秒ごとに実行されるSyncメソッドへのスケジュールされた呼び出しを行うことができます。変更を保存し、実際のイベント自体を無視しますか?

答えて

3

順序付けられたリストを更新するには、ストップイベントを使用する必要があります。例えば

 $("#List .Items").sortable({ 
      stop: function(e, ui) { 
       // update items 
      } 
     }); 
関連する問題