0

こんにちは人々 はいくつかのドラッグ ドロップで UI を使用しています。問題は、「クローン」を起動できないことです。

2 つ<ul><li></li></ul>のリストがあり、リスト 1 からリスト 2 にドラッグしたいのですが、そのビットは簡単ですが、「クローン」をリスト 1 に残すのは簡単ではありません。私が必要/したいことは、リスト1からリスト2にドラッグすることです(片道ドラッグのみ)、リスト2で受信すると、ドラッグされたアイテムを非表示にします-OKは奇妙に聞こえますが、ドラッグされたアイテムのIDはそれに基づいてページをロードします<li>2番目に作成した「空」にIDを入れる<ul>

これまでのところ、「私たち」は次のようになっています。

 $('ul#inputs_menu li ul').sortable({

connectWith: "ul#layout_form",

}).disableSelection();

$('ul#inputs_menu li ul li').sortable({

helper: "clone"

}).disableSelection();


$(' ul#layout_form' ).sortable({

receive: function(event, ui) {

var new_item = (ui.item).attr('id');

$('ul#layout_form').append('<li><div id="'+new_item.substr(4)+'"class="'+new_item.substr(4)+' inputs radius_10" ></div></li>');

$('#'+new_item.substr(4)).load('includes/text.php?fld_name='+new_item.substr(4));

}

}).disableSelection();

提案してください - ありがとう

4

1 に答える 1

1

ui.itemどちらがオリジナルであるかの代わりにui.helper、クローンであるこちらが必要です。.appendTo()また、代わりに次のように使用することで、全体的なコードとセレクターの作業を削減できます。

$('#inputs_menu li ul').sortable({
  connectWith: "ul#layout_form",
}).disableSelection();
$('#inputs_menu li ul li').sortable({
  helper: "clone"
}).disableSelection();

$('#layout_form' ).sortable({
  receive: function(event, ui) {
    var new_item = ui.helper.id.substr(4);
    $('<li><div id="'+new_item+'"class="'+new_item+' inputs radius_10" ></div></li>')
      .appendTo('#layout_form')
      .find("div").load('includes/text.php?fld_name='+new_item);            
  }
}).disableSelection();
于 2010-12-01T09:01:41.050 に答える