【问题标题】:jQuery functions not working on cloned elementjQuery函数不适用于克隆元素
【发布时间】:2015-06-11 16:03:05
【问题描述】:

我有一个要克隆的元素,上面有一些简单的 jQuery 事件/函数,例如单击操作(我在此函数中设置了 log.console)来执行一些小操作。

当我克隆元素时,我的 jquery 函数似乎不再适用于克隆的元素(仍然可以找到真正的元素)。

这种行为是否有原因,我该如何解决?

(更新)

我的克隆,以及我的删除按钮。我在克隆函数中添加了 true ,但仍然没有发生任何事情。

    $('.clone-row').click(function() {

        var row = $(this).prev().prev();
        $(row).clone(true, true).append('<span class="remove">remove</span>').hide().appendTo('.clones').css('opacity', 0).slideDown(350).animate({ opacity: 1 },{ queue: false, duration: 'slow' });

    });
    // clone works fine..

    $('.remove').click(function(){

        console.log('remove');

    });
    // nothing happens

非常感谢!

【问题讨论】:

标签: javascript jquery click clone


【解决方案1】:

您需要使用.clone( [withDataAndEvents ] [, deepWithDataAndEvents ] ):

$.clone( true, true )

一个布尔值,指示是否应将事件处理程序和数据与元素一起复制。

默认情况下,这是false

【讨论】:

  • 感谢您的回答,我尝试使用这些更改编辑克隆,但仍然没有任何反应。我已经用克隆/删除代码更新了我的帖子
【解决方案2】:

改变

 $(element).click(handler);

 $(element).on("click",handler);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-29
    • 1970-01-01
    • 1970-01-01
    • 2021-12-12
    • 1970-01-01
    • 2021-12-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多