0

私は JQUERYUI を使用しており、リスト項目を含む次の 2 つのリストがあります。デフォルトでは、最初のリストにはすべてのアイテムが含まれ、これらのリスト アイテム内のすべての div は非表示になっています。このリストから 2 番目のリストにアイテムを移動するとき、これらの div をリスト アイテムに表示したい (ただし、その特定のリスト アイテムのみ)。2番目のリストから元のリストに戻すときに、このアイテムのdivをすべて非表示にしたいのですが、アイテムによってはこれらのdivを非表示にする方法がわかりません。どんな助けでも大歓迎です。私の元のリストは次のとおりです。

<ul id="all-colls-list" class="droptrue">
                    <li class="sortedli">
                        Item 0
                                <div class="sel-total-on">&nbsp;</div>
                                <div class="sel-group-off">&nbsp;</div>
                                <div class="sel-sort-on">&nbsp;</div> 
                                <div class="sel-display-on">&nbsp;</div>
            </li>
    <li class="sortedli">
                        Item 1
                                <div class="sel-total-on">&nbsp;</div>
                                <div class="sel-group-off">&nbsp;</div>
                                <div class="sel-sort-on">&nbsp;</div> 
                                <div class="sel-display-on">&nbsp;</div>
            </li>
                    <li class="sortedli">
                        Item 3
                                <div class="sel-total-on">&nbsp;</div>
                                <div class="sel-group-off">&nbsp;</div>
                                <div class="sel-sort-on">&nbsp;</div> 
                                <div class="sel-display-on">&nbsp;</div>
            </li>
    </ul>

2 番目のリストは次のとおりです。

 <ul id="coll-selected-list" class="droptrue sort-drop" style="width:400px;">
</ul>

2 番目のリストを受け取る - div を表示する

receive: function (event, ui) {
 // Show the divs
$(ui.item).not(':has(.sel-total-on)').show();
}

最初のリストを受け取る - div を非表示にする

receive: function (event, ui) {
 // Hide the divs
$(ui.item).not(':has(.sel-total-on)').hide();
}
4

1 に答える 1

0

最初のリストから2番目のリストに移動するときは、divのクラスを「非表示」から「非表示」に、またはその逆に変更するだけです

まだ行っていない場合は、以下に示すように css でクラスを定義します。確認してください: このプロパティを持ついくつかの css クラスが既にある可能性があります。その場合、定義する必要はありません。

.divhide{
   display:none
} 

2番目のリストから最初に移動するときは.divhideクラスを追加し、最初から2番目に移動するときは削除します。

$("div.myClass").addClass('.divhide');
$("div.myClass").removeClass('.divhide');
于 2012-08-29T20:32:05.143 に答える