奇怪的问题。我有以下代码:
// 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()。