2013-10-07 42 views
1

我试图解决这一段时间,我将不胜感激任何帮助。 我有三列。每个列在顶部都包含一对添加/删除按钮。我想要添加按钮来添加父列后的父列的克隆。我尝试过克隆父列的各种方法,但无济于事。如何追加和删除列分数

我也想要删除按钮来删除包含列。我只设法使用删除按钮来处理第一列。该功能不适用于以下列。

我会很感激一些帮助。谢谢。

http://jsfiddle.net/equiroga/h2dnn/2/

$(document).ready(function() { 

    $("#add").click(function() { 
    $(".day-column").append(".day-column"); 
    $('.day-column').clone().attr('class','.day-column').insertAfter('.day-  column:first'); 
    }); 

    $("#remove").click(function() { 
    $(".day-column:first").remove('.day-column:first'); 
    }); 

    }); 
+0

您的jsFiddle有一些好奇的HTML:'

回答

0

工作演示http://jsfiddle.net/2WUtB/

编辑2:演示2http://jsfiddle.net/RNW24/与使用$(this).closest('section.day-column').clone()你只会克隆最近的部分而不是一大堆这是发生在你的情况! :) Jquery有很好的文档,我认为你会玩得很开心,你会成为一个快乐的小伙子! http://api.jquery.com/closest/

要添加点击动态生成的元素,您需要使用.on API。

API:.onhttp://api.jquery.com/on/

的。对()方法附加事件处理程序到当前选定设置在jQuery对象元素 。从jQuery 1.7开始,.on()方法 提供了附加事件处理程序所需的全部功能。有关 帮助转换旧的jQuery事件方法,请参阅.bind(), .delegate()和.live()。要移除使用.on()绑定的事件,请参阅 .off()。要附加只运行一次,然后删除 本身的事件,请参阅。一()

2ndly,删除“ID =加上”要复制的id和身份始终是唯一的,使用class代替。

第三个HTML是有点wonky我会留在你的项目导致让UI的人决定。

希望这有助于:)

一些有用的链接:

代码

$(document).ready(function() { 

    $(document).on('click', '.add', function() { 
     alert('Click is bind with add button'); 
     $("ul").append("<li></li>"); 
     $('.day-column').clone().attr('class', '.day-column').insertAfter('.day-column:first'); 
    }); 

    $(document).on('click', '.remove', function() { 
     alert('Click is bind with remove button'); 
     $(".day-column:first").remove('.day-column:first'); 

    }); 

}); 
+0

@ Tats_innit谢谢。该方法的工作,但不幸的是,它也克隆了第一列后的整行列。我只想让第一列(父)自己克隆一个重复的列。我当然感谢你的努力。感谢您的见解。干杯。 –

+0

@ LeroyTah-dowHerschelSilverm很高兴帮助':))'saweet哥们,我会看看,当我自由! –

+0

@ Tats_innit我并不是指任何不敬。我是新来的stackoverflow,我仍然搞清楚我的东西了。我问得太多了。感谢您分享您的知识和解决方案。我会小心不要在未来犯同样的错误。谢谢。 –