3

私のシナリオは、リスト項目として含まれている人の名前のリストがあり、それらの名前をボックスにドラッグできるようにしたいということです。私はこの部分をjqueryUIで動作させましたが、私の問題は、名前がボックスにドラッグされたときに、人が複数のリストに含まれている可能性があるため、元のリストから移動したくないということです。

問題は.addの代わりに.appendToを使用していることだと思いますが、.appendToを.addに切り替えるだけでは明らかに単純ではありません

$( this ).appendTo( $list ).show( "slow" );

コード全体:

$(function() {
    $( "#sortable1, #sortable2, #sortable3" ).sortable().disableSelection();

    var $tabs = $( "#tabs" ).tabs();

    var $tab_items = $( "ul:first li", $tabs ).droppable({
        accept: ".connectedSortable li",
        hoverClass: "ui-state-hover",
        drop: function( event, ui ) {
            var $item = $( this );
            var $list = $( $item.find( "a" ).attr( "href" ) )
                .find( ".connectedSortable" );

            ui.draggable.hide( "slow", function() {

                $( this ).appendTo( $list ).show( "slow" );



            });
        }
    });
});

実際の例と HTML マークアップについては、以下のフィドルを参照してください。
http://jsfiddle.net/sXRKd/1/

グラシアス!

4

1 に答える 1

1

希望、あなたが誰かに落とされたとき、それは両方の場所で役に立たなければなりません。たとえば、立ち寄るときはと の両方を利用josh mondieするClose Friends必要がAll FriendsありClose Friendsます。

このfiddleを見てください。正常に動作しています。

コード、

drop: function (event, ui) {
      var $droppableId = $("a", this).attr("href");
      var $newList = $(".connectedSortable", $droppableId);

      ui.draggable.hide("slow", function () {
        $newList.append(ui.draggable.clone().show());
      });
      ui.draggable.show("slow");
    }
于 2013-01-07T12:17:50.287 に答える