2

編集:私はこの質問を切り詰めて、それを置きました

変更されるのは元のアイテムであり、新しいアイテムではないことを確認してください http://jsfiddle.net/mikkelbreum/DBG5q

ドラッグされたヘルパーがどのように変更されるかを確認しますが、要素がドロップされると元に戻ります。 http://jsfiddle.net/mikkelbreum/dpTC8

並べ替え可能なリストにリンクされたドラッグ可能なリストがあります

ドラッグ可能から並べ替え可能にドラッグするときは、複製されたヘルパーを使用するため、元のヘルパーは引き続きドラッグ可能コレクションに残ります。

クローンをドラッグ可能なリストからソート可能なリストにドラッグするたびに、新しいコピーに一意の見出しを付けたいと思います(h2要素を操作します)。

新しく作成された要素に対処する方法が見つかりません。

私は2つのアプローチを試しました:

1つは、ドラッグ可能なオブジェクトの開始イベントでヘルパークローンをターゲットにすることです。ここでの問題は、ヘルパークローンは変更されますが、その変更は、並べ替え可能なリストに作成されたときに最終要素にコピーされないことです。そこで作成された新しい要素は、それがクローンであるドラッグ可能なリスト内の元の値を取ります。

start: function(event, ui) {

ui.helper.find('h2').text('altered');

}

ドラッグを開始すると、クローンで変更された変更を確認できますが、ソート可能オブジェクトにドロップすると、h2は元の見出しにリセットされます。

そこで、ソート可能な受信イベントで新しいオリジナルを変更しようとする2番目のアプローチを試しました。

receive: function(event, ui) {

ui.item.find('h2').text('altered');

}

これにより、要素をドラッグしたリスト内の元の要素のh2が変更されますが、sortable内に作成された新しい要素は、古い元の要素のままです。

どうすればそれをターゲット/変更できますか?

4

1 に答える 1

1

問題はjQueryUIBUGが原因のようです

参照:jQueryUIドラッグ可能/ソート可能-新しいアイテムへの参照を取得

于 2011-03-19T17:21:42.833 に答える