JSFiddle - React, Tailwind, and code Playground

HTML

<script src="http://cdn.datatables.net/1.10.0/js/jquery.dataTables.js"></script>
<link rel="stylesheet" href="http://cdn.datatables.net/1.10.0/css/jquery.dataTables.css">
Name:<input type="text" name="name" id="name" />
<br />Age:
<input type="text" name="age" id="age" />
<br />Gender:
<br />
<input type="radio" name="gender" value="Male" />Male
<br />
<input type="radio" name="gender" value="Female" />Female
<br />
<button id="Save" name="Save">Save</button>
<div class="container well">
    <table id="myTable" class="table table-striped table-bordered" cellspacing="0" width="100%">
        <thead>
            <th>Name</th>
            <th>Age</th>
            <th>Gender</th>
            <th>Action</th>
        </thead>
        <tbody>
        </tbody>
    </table>
</div>

JavaScript

var dataSet;
try{
    dataSet = JSON.parse(localStorage.getItem('dataSet')) || [];
} catch (err) {
    dataSet = [];
}
$('#myTable').dataTable({
        "bStateSave": true,
        "stateSave": true,
        "bPaginate": false,
        "bLengthChange": false,
        "bFilter": false,
        "bInfo": false,
        "bAutoWidth": false
});
oTable = $('#myTable').DataTable();
for (var i = 0; i < dataSet.length; i++) {
    oTable.row.add(dataSet[i]).draw();
}

$('#Save').click(function () {

        var data = [
            $('#name').val(),
            $('#age').val(),
            $("[name='gender']:checked").val(),
            "<button class='delete'>Delete</button>"
        ];
        oTable.row.add(data).draw();
        dataSet.push(data);
        localStorage.setItem('dataSet', JSON.stringify(dataSet));      
    
});

$(document).on('click', '.delete', function () {
    var row = $(this).closest('tr');
    oTable.row(row).remove().draw();
    var rowElements = row.find("td");
    for (var i = 0; i < dataSet.length; i++) {
        var equals = true;
        for (var j = 0; j < 3; j++) {
            if (dataSet[i][j] != rowElements[j].innerHTML) {
                equals = false;
                break;
            }
        }
        if (equals) {
            dataSet.splice(i, 1);
            break;
        }
    }
    localStorage.setItem('dataSet', JSON.stringify(dataSet));
});