Javascript jQuery将remove按钮追加到列表中会不断添加一个额外的按钮

Javascript jQuery将remove按钮追加到列表中会不断添加一个额外的按钮,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个列表,我希望用户能够通过单击按钮添加另一个列表。添加列表时,应显示“删除”按钮 每当我不断添加一个新项目时,都会附加一个额外的关闭按钮,结果如下所示 . .. ... .... ..... ...... 这是我的js $('a').on('click', function(e){ e.preventDefault(); var a = $(this).closest('form').find('ol, li').last().html(); console.log(

我有一个列表,我希望用户能够通过单击按钮添加另一个列表。添加列表时,应显示“删除”按钮

每当我不断添加一个新项目时,都会附加一个额外的关闭按钮,结果如下所示

.
..
...
....
.....
......
这是我的js

 $('a').on('click', function(e){
   e.preventDefault();
   var a = $(this).closest('form').find('ol, li').last().html();
   console.log(a);
    var closeButton = "<a href='#' class='remove-upgrade-field'>Remove</a>" 
    $('<li>' + a + closeButton + '</li>' ).appendTo('ol');

 });

 $('.remove-upgrade-field').live('click', function(e){
   e.preventDefault();
   $(this).closest('li').remove();
 });
$('a')。在('click')上,函数(e){
e、 预防默认值();
var a=$(this).closest('form').find('ol,li').last().html();
控制台日志(a);
var closeButton=“”
$(“
  • ”+a+closeButton+“
  • ”).appendTo('ol'); }); $('.remove upgrade field').live('click',函数(e){ e、 预防默认值(); $(this).最近('li').remove(); });

    这是因为每次单击时都会附加
    var closebutton

    "<a href='#' class='remove-upgrade-field'>Remove</a>" 
        $('<li>' + a + closeButton + '</li>' ).appendTo('ol');
    
    “”
    $(“
  • ”+a+closeButton+“
  • ”).appendTo('ol');
    尝试在控制台中记录关闭按钮的o/p。

    更改为:

    js

    $('a').on('click', function(e){
        e.preventDefault();
        var a = $(this).closest('form').find('ol, li').last().children().html()
        console.log(a);
        var closeButton;
        closeButton = "<a href='#' class='remove-upgrade-field'>Remove</a>" 
        $('<li>' + a + closeButton + '</li>' ).appendTo('ol');
    
    });
    
    $('.remove-upgrade-field').live('click', function(e){
        e.preventDefault();
        $(this).closest('li').remove();
    });
    
    $('a')。在('click')上,函数(e){
    e、 预防默认值();
    var a=$(this).closest('form').find('ol,li').last().children().html()
    控制台日志(a);
    var关闭按钮;
    closeButton=“”
    $(“
  • ”+a+closeButton+“
  • ”).appendTo('ol'); }); $('.remove upgrade field').live('click',函数(e){ e、 预防默认值(); $(this).最近('li').remove(); });

    您每次都会添加关闭按钮。您必须从append中删除close按钮,并且只在第一次执行此操作。然后在上面添加所有新列表。这是什么
    .find('ol,li')
    应该做什么?the.find('ol,li'))找到我的最后一个li元素并获取itntgCleaner的html-我该怎么做?当另一个项目被列出时,boba fett的名称会更改为删除或取消定义感谢回复,我知道这是怎么回事……我只是不知道如何阻止这种情况发生