0

現時点では、php によって動的に生成された一連の div があり、すべての ID が「itembox」で始まり、カウント数が追加されています。ページにドロップ可能なごみ箱領域があり、ユーザーはごみ箱に fdrag してドロップすることで個々のアイテムボックスを削除できます。

私の問題は、オリジナルをドラッグしてもドロップ可能がアクティブに見えないことですが、helper: 'clone' を設定すると (完全に) 機能します。残念なことに、ドラッグすると、実際にどのアイテムボックスがドラッグされたかに関係なく、クローン関数はアイテムボックスの最初の反復からそのクローンを取得します。

だから私は、ドロップ可能にオリジナルを受け入れるようにするか、実際にドラッグされたアイテムボックスからクローンを取得するようにクローン機能を強制する解決策を探しています。

4

2 に答える 2

1

問題は、ドロップ可能な初期化子の受け入れオプションにあるに違いないと思います。次のことを試してください。

$('#mydroppable').droppable(
{
    accept: function() { return true; },
    drop: function () { alert("Dropped!"); }
});

これですべてが受け入れられるようになるため、accept 関数に何らかのフィルタリングを実装する必要がありますが、それでも機能するはずです。

于 2008-11-12T13:51:13.600 に答える
0

以下の解決策を試すこともできます。

<script type="text/javascript">
$(document).ready(function(){
    $('.srcfield').draggable({
        revert: true    
    });

    $('#trash').droppable({
        accept : ".srcfield",
        over: function(){
            $(this).removeClass('out').addClass('over');
        },`enter code here`
        out: function(){
            $(this).removeClass('over').addClass('out');
        },
        drop: function(ev, ui){
            //var answer = confirm('Delete this item?');
            var theTitle = $(ui.draggable).attr("title");
            $(this).html("<u>"+theTitle+"</u><br/> is deleted!");
        }
    });
});
</script>


<body>
    <div id="trash" class="out">
            <span>Trash</span>
    </div>
    <div id="sourcefields">
            <div class="srcfield" title="First Name"><span>First Name</span></div>
            <div class="srcfield" title="Last Name"><span>Last Name</span></div>
            <div class="srcfield" title="Age"><span>Age</span></div>
    </div>
</body>
于 2011-11-17T13:02:55.043 に答える