как повторно инициализировать удаленный класс select2 в первом ряду из дополнения - PullRequest
0 голосов
/ 26 апреля 2019

У меня проблема с добавлением новой строки с добавлением jquery и удалением класса select2-container, чтобы можно было использовать select2 в следующей строке, но первый класс select2-container удаляется, поэтому как мне сделать select2класс -контейнера удален только для новых строк, которые я добавляю?

это мой jquery:

<script type="text/javascript">

$ (document) .ready (function () {

//Всплывающая подсказка dan auto numeric $ ('[data-toggle = "tooltip"]. form-control'). tooltip ();
$ ('. приз'). autoNumeric ();

  $('.select2').select2();

  //add row
  $('#addRow').on('click',function(){
    var lastRow = $('#dataTable tbody tr').html();
    $('#dataTable tbody').append('<tr>' + lastRow + '</tr>').trigger('');
    $('#dataTable tbody tr:last input').val('');
    $('.select2-container').remove();
    $('.select2').select2();
    $('.select2-container').css('width','100%');
    $('[data-toggle="tooltip"].form-control').tooltip();  
    $('.prize').autoNumeric();
  });

  // Delete selected checkbox in the table
$('#delRow').click(function() {
    var lenRow    = $('#dataTable tbody tr').length;
    var lenChecked  = $("#dataTable input[type='checkbox']:checked").length;
    var row = $("#dataTable tbody input[type='checkbox']:checked").parent().parent();
    if (lenRow == 1 || lenRow <= 1 || lenChecked >= lenRow) {
        alert("Can't remove all row!");
    } else {
        row.remove();
    }
  });

});

это мой html:

<tr>
  <table id="dataTable" class="dataTable table form-group-sm table-striped">
      <tr>
          <td width="33"><input type="checkbox" name="chk[]"></td>
          <td>
            <select id="select2" class="select2 form-control" name="item_code[]" style="width: 100%">
              <option value="">-Select Product-</option>
              <?php foreach ($item->result() as $valitem){?>
              <option value="<?php echo $valitem->item_code; ?>"><?php echo $valitem->item_name; ?></option><?php } ?>
            </select>
          </td>
          <td><input data-a-dec="," data-a-sep="." type="text" class="prize form-control" name="prize[]" placeholder="input prize per package" required='' data-toggle="tooltip" data-placement="right" title="Input angkanya saja. Untuk desimal menggunakan titik. Contoh yang benar : 6000000 atau 3255.35" style="width: 100%;" /></td>
          <td><input type="text" class="form-control" name="remark[]" placeholder="input remark" data-toggle="tooltip" data-placement="top" title="Input keterangan tambahan"></td>
      </tr>
  </table>
  </tr>

Я пытался удалить select2 с помощью 'destroy' и другими способами, но поиск того, что я использую, более успешен, но все еще есть проблемы, вы, ребята, можете помочь?

...