这是上一个SO问题的延续,并带有当前代码,在这里我可以看到连续的数字。如果我最初这样做的话,我的ID会以expy -1开头,如果我单击添加更多按钮,它将完美地变成expy-2,但是当我从expy -1单击时,expy-3克隆必须在expy-2之后而不是在expy-1和expy-2内部

当我尝试从那里删除expy-2时,它必须自动检测ID
例如如果我有expy-1,expy-2,expy-3和expy-4如果我删除expy2,则最终结果应为expy-1,expy-2,expy-3

根据以前的用户告诉我,我已经删除了++rowCount并更改为rowcount

$clone.find('[id]').each(function() {
     this.id += '_' + num;
     console.log(this.id);
     $(this).removeClass("errRed");
     if ($(this).hasClass("required_Field")) {
       $(this).prevAll('label').find('span.required-star').removeClass('text-error-red');
       $(this).addClass("cloned_field");
     } else {
       $(this).removeClass("errRed");
       $(this).removeClass("text-error-red");
     }
   });
   $clone.find('.btn_more').after("<input type='button' class='btn_less1 edu_btnle' id='buttonless" + (++rowCount) + "'/>")
   $clone.attr('id', "expy-" + (rowCount)).addClass('exp_add');


这是fiddle link

最佳答案

clickbtn_less1分配colned-row3新的ids

$(document).on('click', ".btn_less1", function() {
   var len = $('.cloned-row3').length;
   if (len > 1) {
     $(this).closest(".btn_less1").closest(".cloned-row3").remove();
   }

   // Iterating cloned-row3 and changin the id
   $(".cloned-row3").each(function(i){
        this.id = "expy-"+(i+1);
   });
 });


Live Fiddle

说得通?

关于javascript - jQuery克隆序列未按预期工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34393347/

10-09 17:52