JSFiddle - React, Tailwind, and code Playground

by learner001

HTML

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.2/js/bootstrap-select.min.js"></script>
<div class="input_fields_wrap">
  <button class="add_field_button_per plusbutton">+</button>

  <input type="text" name="data[1][]" id="first_name" class="first_name" placeholder="First Name">
  <input type="text" name="data[1][]" id="last_name" class="last_name" placeholder="Last Name">
  <input type="text" name="data[1][]" id="email" class="email" placeholder="Email">

  <select name="action[]">
            <option value="Inactive">Inactive</option>
            <option value="to">To</option>
            <option value="cc">CC</option>
          </select>

</div>

JavaScript

$(document).ready(function() {
  var max_fields = 10; //maximum input boxes allowed
  var wrapper = $(".input_fields_wrap"); //Fields wrapper
  var add_button = $(".add_field_button_per"); //Add button ID


  var x = 1; //initlal text box count
  $(add_button).click(function(e) { //on add input button click
    e.preventDefault();
    if (x < max_fields) { //max input box allowed
      x++; //text box increment
      $(wrapper).append('<br><input type="text" name="data[' + x + '][]" id="first_name" class="first_name" placeholder="First Name"><input type="text" name="data[' + x + '][]" id="last_name" class="last_name" placeholder="Last Name"><input type="text" name="data[' + x + '][]" id="email" class="email" placeholder="Email"><select name="data[' + x + '][]"><option value="Inactive">Inactive</option><option value="to">To</option><option value="cc">CC</option></select>'); //add input box                    
    }
  });

  $(wrapper).on("click", ".remove_field", function(e) { //user click on remove text
    e.preventDefault();
    $(this).parent('div').remove();
    x--;
  })
});