JQueryUI:删除div时,可拖动div中的按钮不起作用

时间:2014-04-06 14:40:30

标签: javascript jquery jquery-ui

StackOverflow上的第一篇文章。

我试图在标题中恢复这个问题,我在这里做了一个jsfiddle: http://jsfiddle.net/gBBcj/

生成的html似乎是正确的,但拖动的div中的按钮不起作用。 我甚至试图将它重新定义为.button(),但没有成功。

感谢您的帮助!

$(".box").draggable({
    helper: 'clone'
});
$("#left").droppable({
    accept: '.box',
    drop: function (e, ui) {
        $(this).append('<div class="box"></div>');
        var droppedBox = $(this).children().last();
        $(droppedBox).html(ui.helper.html());
    }
});
$(".myButton").click(function () {
    alert("Clicked");
});

2 个答案:

答案 0 :(得分:1)

使用.on()

阅读Event Delegation

语法

$( elements ).on( events, selector, data, handler );

$(".container").on('click', '.myButton', function () {
    alert("Clicked");
});

Fiddle Demo

答案 1 :(得分:0)

click()绑定适用于首次附加时存在的元素。它不适用于新添加的元素。

使用on("click")方法附加点击事件,如Tushar Gupta的答案。它将一个委托附加到容器上,该容器将处理&#34; click&#34;新添加的元素。