У меня есть форма. Когда я нажимаю кнопку «Отправить», я создаю объект с элементами формы. А затем я помещаю эти объекты в массив.
Что я хочу сделать, так это удалить соответствующий объект из этого массива и его строку из таблицы, когда я нажимаю кнопку удаления. А также обновить этот объект при нажатии кнопки обновления. Как я могу это сделать?
индексная страница:
<!DOCTYPE html>
<html>
<head>
<title>Person Record</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="shortcut icon" href="">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
</head>
<body>
<form id="personForm">
<div>
<label for="firstname">Firstname:</label>
<input type="text" id="firstname" name="firstname" value="" placeholder="Firstname"/>
</div>
<div>
<label for="lastname">Lastname:</label>
<input type="text" id="lastname" name="lastname" value="" placeholder="Lastname"/>
</div>
<div>
<label for="tc">TC:</label>
<input type="tel" id="tc" name="tc" value="" placeholder="TC"/>
</div>
<div>
<label for="birthday">Birthday:</label>
<input type="date" id="birthday" name="birthday" />
</div>
<div>
<input type="button" value="Submit" id="submitButton" />
</div>
</form>
<div id="table">
<h3>People List</h3>
<table id="personTable" border="1">
<thead>
<tr>
<th> Firstname</th>
<th> Lastname</th>
<th> TC </th>
<th> Birthday </th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
<script type="text/javascript" src="main.js"></script>
</body>
</html>
основной.js:
var obj = {};
var data, i;
var personArray = [];
$("#submitButton").click(function () {
addButton();
addTable();
});
function addButton() {
data = $('#personForm').serializeArray();
for (i = 0; i < data.length; i++) {
obj[data[i].name] = data[i].value;
}
personArray.push(obj);
}
function addTable() {
if (personArray.length > 0) {
$('table#personTable tbody').append('<tr><td>' + obj['firstname'] + '</td><td>' + obj['lastname'] + '</td><td>' + obj['tc'] + '</td><td>' + obj['birthday'] + '</td><td><button id="deleteButton">Delete</button></td><td><button id="updateButton">Update</button></td></tr>');
}
$("#deleteButton").click(function () {
$(this).parent().parent().remove(); //Only deletes first row! I want to delete relative row an object
});
}
$("#firstname").val('');
$("#lastname").val('');
$("#tc").val('');
$("#birthday").val('');