JSFiddle - React, Tailwind, and code Playground
HTML
<div class="person">
<div class="controls controls-row">
<input class="span3" placeholder="First Name" type="text" name="firstname1">
<input class="span3" placeholder="Last Name" type="text" name="lastname1">
<select class="span2" name="gender1"><option value="Male">Male</option><option value="Female">Female</option></select>
</div>
</div>
<a href="#" id="addRow"><i class="icon-plus-sign icon-white"></i> Add another family member</p></a>
JavaScript
$(document).ready(function(){
$('#addRow').click(function(){
// get the last person and html html
var $person = $('.person').last();
var person = $person.html();
// find the number
var index = person.indexOf('firstname');
var number = parseInt(person.substring(index+9,1));
var next = number+1;
// replace the number
// for firstname
person.replace('firstname'+number, 'firstname'+next);
// for lastname
person.replace('lastname'+number, 'lastname'+next);
// for gender
person.replace('gender'+number, 'gender'+next);
// insert the new person after the last one
$person.after($('<div class="person">'+person+'</div>'));
// get the new person
var $new = $('.person').last();
// hide it
$new.hide();
// reset the values
$new.find('input, select').val('');
// fade it in
$new.slideDown();
});
})