2012-04-02 11 views
0

漠然としたタイトルに対する謝罪ですが、これは1行で説明するのはかなり難しい問題です!Jquery UIアコーディオンの問題 - 削除されている場合、次のリストアイテムを自動的に展開する

私はいくつかのリスト項目と各リスト項目をクリックすると展開するdivを持つアコーディオンを持っています。私は、アクションがコミットされたときにリスト項目を実際に削除するいくつかのAjax機能を備えたアコーディオンを使用していますが、そのことを説明する必要はありません。知るべき最も重要なことは、アコーディオン内のリスト項目を削除します。

問題

アクティブリストの項目が削除されたら、次のリスト項目はまだ崩壊しています。私がする必要があるのは、実際には、その上のリスト項目が削除されると自動的にその次のリスト項目を自動的に展開することです。

私はJqueryのUIドキュメントを見てきましたが、これをどのように達成できるかわからないようです。

コード

これは、アコーディオン内のLiを隠す機能です。だから私は何をする必要があるか何とか「リロード」にアコーディオンを教えてから第二の拡大され

function hideMatchBox(boxId,sourceKey){ 
    $('#'+boxId).animate({height: 0},1000,function(){ 
     var allHidden = true; 
     $('#manualMatches li').each(function(index){ 
      if($(this).height() > 0) { 
       allHidden = false; // -failsafe 
      }   
     }); 
     if(allHidden){ 
      $('#manualMatches').html('<p>All records are matched for your service.</p>'); 
     } 
    }); 
} 

top liこのhideMatchBox関数が実行された後。

liのどのような順序が隠されるのか保証されていないので、実際にはliを完全に削除するのではなく、隠すのが良いかもしれないと思いますか?または隠れたliをリストの一番下に移動し、最初のliを展開しますか?

もう少し意味が分かりますか?例を提供するのはかなり困難ですが、もし必要ならば私はそうします。

ご協力いただきますようお願い申し上げます。

var NextIndex = $(this).closest('.div').next(); 
$('#yourAccordian').accordion("activate" , NextIndex); 

それとも、何の機能に応じて、削除した後にそれを置く場合は、同じインデックスを使用することができるはずです:あなたが何かを追加し、「削除」機能で

おかげ

+0

コードサンプル?少なくとも関連する部分? – lzdt

答えて

0

あなたはaccordian要素を削除するために使用します:)

具体的なsoloutionを与えるコードが必要です。

+0

ちょうどコードで元のポストを編集しました:) – remi90

+0

うん、これは良いです:http://jsfiddle.net/CdTG8/2/ –

+0

このマルコのおかげで、私はあなたのコードを私の状況に対応するためにかなり微調整しなければならなかったしかし、それにスポットがあった - 非常に便利です。 – remi90

関連する問題