奇怪的问题。我有以下代码:

// remove template row from DOM and store in variable

var $addDegreeRow = $('.addDegreeRow').remove();
$('#addDegreeLink').click(function (ev) {
    ev.preventDefault();
    $('.degreeSection').append($addDegreeRow);
});


我正在从DOM中选择一个元素,将其删除,并将其内容保留在选择器$addDegreeRow中。然后,我将click事件分配给页面上的链接,该链接将存储的选择器附加到页面上的现有div上。

第一次通过点击事件,一切运行正常。但是第二次却什么也没有完成。而且,如果我在firebug中查看HTML,则每次执行单击时.degreeSection div都会突出显示,即使没有附加任何内容。就像jQuery用新的覆盖旧的$addDegreeRow附加,而不是仅仅添加另一个。

有人遇到过这个问题吗?谢谢。

最佳答案

您一次又一次地添加相同的元素。如果要复制该元素,则必须先对其进行clone()。

09-17 01:14