title: Issue with duplicating select2 selects with jQuery
body: <p>I'm working on a project where we need to create an expandable form, so the user can input any number of items by clicking an 'add new item' button which will clone a row and allow them to select new options to add into the form.</p>
  
  <p>To do this so far we have a row of elements as shown:</p>
  
  <pre><code>&lt;div class="input-group"&gt;
    &lt;select class="form-control name-select" name="name"&gt;
      &lt;option value disabled selected&gt;Component Name&lt;/option&gt;
    &lt;/select&gt;
    &lt;select class="form-control type-select" name="sale_type"&gt;
      &lt;option value disabled selected&gt;Sale Type&lt;/option&gt;
      &lt;option value="1"&gt;type 1&lt;/option&gt;
      &lt;option value="2"&gt;type 2&lt;/option&gt;
    &lt;/select&gt;
    &lt;input type="input" class="form-control" placeholder="number"&gt;
    &lt;input type="text" class="form-control" placeholder="Total number" readonly&gt;
    &lt;input type="text" class="form-control" placeholder="Cost per item" readonly&gt;
    &lt;input type="text" class="form-control" placeholder="Total cost" readonly&gt;
  &lt;/div&gt;
  </code></pre>
  
  <p>We are currently just working on the front end, but these selects will have lots of options in.</p>
  
  <p>My issue is that we need to be able to duplicate this row and still be able to use the select2 boxes.
  From looking into it we realise that we need to destroy the select2, clone it, then reinitialise it. This is not an issue, but for some reason, when we duplicate the row of items, all select2 boxes except the most recently created one are just normal selects. It's as if it's only allowing one of each of the select2's which isn't ideal because we need all of them to work to allow ease of selection from the long list of options.</p>
  
  <p>The code we are using to duplicate the items is:</p>
  
  <pre><code>var base = element.find('.item-row.base').first();
  
  base.find('.name-select').select2('destroy');
  base.find('.type-select').select2('destroy');
  
  var itemRowClone = base.clone();
  
  itemRowClone.removeClass('base')
  
  itemRowClone.find('select').each(function(){
      $(this).attr('name', $(this).attr('name') + element.find('.item-row').length)
  });
  
  element.find('.new-items').append(itemRowClone);
  
  base.find('.name-select').select2();
  base.find('.type-select').select2();
  
  itemRowClone.find('.name-select').select2();
  itemRowClone.find('.type-select').select2();
  
  console.log('reinitialised')
  </code></pre>
  
  <p>Like I said, it's destroying the select2s just fine, but when it re-initialises them it's only allowing one instance of each select to be select2, the rest are all default selects.</p>
  
  <p>If anyone has any ideas then that would be amazing!</p>
  
  <p>Thanks in advance</p>