单击按钮时替换附加内容

时间:2016-07-20 13:24:21

标签: jquery replace

 $("#append"+i).html('<div id="entry'+i+'" class="entry'+i+'"></div>');

以上是在点击按钮上完成的我想删除条目+ i并将条目+ i + 1放在那里。这是在回调函数里面所以我可以像这样调用按钮。

$(document).on('click',"#id"+(i+1),function(){
      $("#entry"+i).remove();
    })

问题是我每次点击另一个按钮时都有额外的div我该如何解决?我想用我的条目+ i + 1替换我的条目+ i并删除前一个。 添加的代码。

 function createCallback( i ){
     return function(e){
         e.preventDefault();
         $("#append"+i).html('<div id="entry'+i+'" class="entry'+i+'">'+ '</div>');
         $(document).on('click',"#id"+(i+1),function(){
             $("#entry"+i).remove();
         })
         $(document).on('click',"#id"+(i-1),function(){
             $("#entry"+i).remove();
         })

      }
 }

 for(var i=0;i<10;i++){
    $('#id' + i).click( createCallback( i ) );
 }

1 个答案:

答案 0 :(得分:0)

您的代码不足以提供准确的解决方案。但从概念上检查以下内容:

  • 在你删除之前等待,因为回调可能是你太快了,无法删除它还没有的东西。

$.when($.ajax("yourcallbackUrl")).then(function(data){
    $("#entry"+i).remove();
});
  • 检查索引:i(如果正确)