使用JQuery动态添加按钮而不使用.append

时间:2015-06-10 13:24:42

标签: javascript jquery loops button add

我有一个场景,我想要一个按钮出现,但这个场景已经循环。

我的代码目前看起来像:

var r = $('<input type="button" value="Done swapping"/>');
$('#doneSwapping').append(r);

我只希望按钮出现一次,但由于使用.append,它会在每次迭代过程中不断添加,从而产生多个按钮。

有解决方法吗?也许在循环结束时再次删除按钮?我确实尝试过.remove但这似乎删除了整个'doneSwapping'引用,而不仅仅是按钮。

谢谢:)

2 个答案:

答案 0 :(得分:0)

首先尝试将其移到循环外。如果你不能点帽子,那么在添加之前检查它是否已经添加。您可以使用按钮的某些属性,就像我使用class

一样
var r = $('<input type="button" value="Done swapping" class="cls"/>');
if($('#doneSwapping .cls').length == 0)
    $('#doneSwapping').append(r);

答案 1 :(得分:0)

你需要使用.empty()它不会破坏结构,而是破坏它的内容。

$('#doneSwapping').empty();  

.remove()会破坏容器。