使用Jquery live事件创建重复按钮

时间:2013-07-29 14:32:34

标签: jquery duplicates live

Jquery live正在调用以复制按钮。但是这段代码并没有给我预期的输出。有人可以帮助我理解这里的错误。我使用Jquery版本1.10.2

// HTML

<body>

<input class="duplicate" type="button" value="Click" />

<script type="text/javascript" src="js/jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="js/ext.js"></script>

</body>

// JQuery的

$(document).ready(function(){
    $('.duplicate').live({
        click: function(){
            alert('you have clicked');
            $(this).after('<input class="duplicate" type="button" value="Click"/>');
        }
    });
});

1 个答案:

答案 0 :(得分:2)

首先,不要使用live(),它已被弃用。而是使用on() - 方法,并将事件委托给容器中的.duplicate-element。 其次,您可以使用.clone()制作元素的副本,而不是再次键入所有标记。

 $('.container').on('click', '.duplicate', function(e) {
    var $this = $(this),
        clone = $this.clone();

    $this.after(clone);

    e.preventDefault();
 });

小提琴:http://jsfiddle.net/W7ty8/2/