2016-04-05 5 views
0

Я работаю над проектом с использованием jquery и jqueryUI (который я только начал использовать), и я некоторое время боролся с проблемой: Я использую перетаскивание functionnality (.draggable() и .dropable()), чтобы клонировать несколько элементов из перетаскиваемой зоны в зону сбрасывания.JQuery UI клонирование детей div

С помощью функции перетаскивания, я отправить "несколько ДИВ я выбрал так:

helper: function(){ 
    var selected = $('.' + selectedClass); 
    if (selected.length === 0) { 
     selected = $(this); 
    } 
    var container = $('<div/>').attr('id', 'draggingContainer'); 
    container.append(selected.clone()); 
    return container; 
}, 

В функции перетаскивания, я хочу использовать несколько дивы и изменить их (это существующий код, который я 'd хотел бы избежать изменения) один за другим. Я использую цикл для лечения каждого пункта, и я использую:

var clone = ui.helper.children().clone(); 

Но когда я хочу, чтобы получить конкретный DIV внутри основного DIV, и я

var clone = ui.helper.children().get(i).clone(); 

Тогда предыдущий код :

clone.find('.formDeleteTileMenu').remove(); 

Больше не работает и не выполняет никаких других манипуляционных функций DOM.

Кто-нибудь знал бы, как я мог бы получить конкретного сына из получаемого мной div и использовать его в качестве клона?

Заранее благодарим за любую помощь, я чувствую, что что-то пропустил.

ответ

0

Я не проверял, но get() возвращает лежащую в основе DOM-объект, а не объект JQuery, так что попробуйте это (используйте eq вместо get):

var clone = ui.helper.children().eq(i).clone(); 
+0

Спасибо большое! Это сработало отлично! – Gabriel

Смежные вопросы