2013-07-12 2 views
0

Я делаю u.i с помощью jquery. Дело в том, что я создал контейнер, который имеет кнопку из добавить и удалить внутри.jquery добавить и удалить unbind

Если я нажму на add, он добавит к другому div только один раз и затем.

Если я нажму на remove на добавленном div, он будет удален, и его можно будет добавить в другой div, как если бы обработчик события был удален.

Я пробовал .unbind, но он не работает над моим кодом.

Пожалуйста, помогите мне здесь с моим кодом:

http://jsfiddle.net/8mNKN/

$(".more").one("click",function(e) { 

     $(this).parent().clone().appendTo("#we"); 

    }); 

    $(document).on("click","#we .remove",function() { 
     $('.more').unbind('click.MyNamespace'); 
     $(this).parent(".container").remove(); 
    }); 

<div class="container"> 
    <p>There are 0 boxes</p> 

    <a href="#" class="more">Add more +</a> 
    <a href="#" class="remove">Add more +</a> 
</div> 
<br/> 
<div class="container"> 
    <p>There are 0 boxes</p> 

    <a href="#" class="more">Add more +</a> 
    <a href="#" class="remove">Remove -</a> 
</div> 
<br/> 
<div class="container"> 
    <p>There are 0 boxes</p> 

    <a href="#" class="more">Add more +</a> 
    <a href="#" class="remove">Remove -</a> 
</div> 
<br/> 
<div id="we"> 
</div> 

ответ

0

Если я понял ваши требования правильно, то

$(".more").on("click",function(e) { 
    var ct = $(this).closest(".container"); 
    if(ct.data('cloned')){ 
     return; 
    } 
    ct.clone().appendTo("#we").data('source', ct); 
    ct.data('cloned', true); 
}); 

$(document).on("click","#we .remove",function() { 
    var ct = $(this).closest(".container"); 
    ct.data('source').data('cloned', false) 
    ct.remove(); 
}); 

Демо: Fiddle

+0

ничего себе, это работа отлично, спасибо arun, я больше не остановлюсь, спасибо огромное :) больше власть вам –

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