2011-01-17 2 views
0

私はサムネイルを持つ要素を持っています。私はユーザーが表示順序をソートすることを許可します(これはajax経由でDBへの更新を起動します)。また、画像を削除することもできます(削除後、残りのすべての画像の表示順序を更新する要求が発生します)。ajaxがその中からデータを削除した後に値を更新する方法は?

私の問題は、バインディングやライブと思っていますが、どこに適用するのかわかりません。

削除時に消灯した配列には、ページが読み込まれたイメージのIDがすべて含まれています。問題は、それらが画像を削除した後も、元のids(削除されたidsを含む)が配列に格納されているため、Ajaxが内部から削除した後に要素の値を更新していないことです。私は最新の内容を得るためにそれを伝える必要があります...

私が読んできたことから、これは正常ですが、私はそれを私のルーチンに結び付ける方法を理解していません。削除後に大量の並べ替えをトリガーする必要があります。

どのようなアイデアの指導者ですか?

$('a.delimg').click(function(){ 
var parent = $(this).parent().parent(); 
var id = $(this).attr('id'); 
$.ajax({ 
    type: "POST", 
    url: "../updateImages.php", 
    data: "action=delete&id=" + id, 
    beforeSend: function() { 
    parent.animate({'backgroundColor':'#fb6c6c'},300); 

    $.jnotify("<strong>Deleting This Image & Updating The Image Order</strong>", 5000); 
    }, 
    success: function(data) { 
    parent.slideUp(300,function() { 
    parent.remove(); 

    $("#images ul").sortable(function() { //NEEDS TO GET THE UPDATED CONTENT 
    var order = $(this).sortable("serialize") + '&action=updateRecordsListings'; 
    $.post("../updateImages.php", order, function(theResponse){ 
    $.jnotify("<strong>" + theResponse + "</strong>", 2000); 
    }); 
    }); 
     }); 

     } 
    }); 
    return false; 
    }); 

ご協力いただきありがとうございます。

答えて

0

私の最初の推測は、アイテムがプラグインによってキャッシュされているということです。あなたはそのような項目を調べる呼び出すことによってこれをテストできます。

var items = $("#images ul").sortable("option", "items"); 

これはアイテムの更新リストが含まれていない場合は、再度設定することができ

$("#images ul").sortable("option", "items", 'li'); 

このチェックは前に、あなたの関数に行くだろうあなたはどの程度、

//NEEDS TO GET THE UPDATED CONTENT 

代わりにしようとしているの項目を再設定したコメントを持つ行destroyingソート可能で再初期化します。

$("#images ul").sortable("destroy"); // destroy 
$("#images ul").sortable(); // init 
+0

申し訳ありませんが高密度ですが、その例を文字通り使用しますか?例えば、.selectorは私のページでは有効ではありません。オプション、アイテム、リリファレンスは何ですか?通常、ソート可能なプラグインは、更新や他のイベントで関数を実行する必要がありますが、何もユーザー活動をしなくても配列が...多分これは問題ですか?多分、質問はソート可能なプラグインに関するものです。 – Brian

+0

@brian - 私はセレクタを更新しました。あなたの 'ul'に' li'を使っているとすれば残りはうまくいくはずです。 –

+0

エラーはありませんが、違いはありません。アラートを使用して「アイテム」の値を確認しようとすると、単にオブジェクトとして表示されます。 「新しい」と申し訳ありません。私は 'オプション'と 'アイテム'の参照が何であるか分かりません。私は元のjqueryのソート可能な構文でそれらを持っていません。私はここで彼らがどのように因数分解するか、または#images ul(idsで画像の周りにliタグを含む)から新しい価値を得る方法を確信していません。 – Brian

関連する問題