JQuery - Add Edit & Delete HTML Table Row Example

May 12, 2019 | Category : JQuery HTML Bootstrap

Today, we will learn how to append table row with add edit and delete function using jquery. we will create simple crud operation using jquery like add edit delete html table row in jquery.

If you are new for jquery and you want to create some awesome example like add, edit and delete function with jquery. then this example will help to create start way to insert update delete operation using jquery.

we will use bootstrap for design so it look's very nice. we will simply create one html file and include bootstrap and jquery file. after that we write code of jquery to create new table row, edit row data and delete row data using jquery.

So, let's see bellow example and demo for testing.

Example

<!DOCTYPE html>

<html>

<head>

<title>Add Edit Delete Table Row Example using JQuery - HDTuto.com</title>

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" />

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>

</head>

<body>

<div class="container">

<h1>Add Edit Delete Table Row Example using JQuery - HDTuto.com</h1>

<form>

<div class="form-group">

<label>Name:</label>

<input type="text" name="name" class="form-control" value="Paresh" required="">

</div>

<div class="form-group">

<label>Email:</label>

<input type="text" name="email" class="form-control" value="paresh@gmail.com" required="">

</div>

<button type="submit" class="btn btn-success save-btn">Save</button>

</form>

<br/>

<table class="table table-bordered data-table">

<thead>

<th>Name</th>

<th>Email</th>

<th width="200px">Action</th>

</thead>

<tbody>

</tbody>

</table>

</div>

<script type="text/javascript">

$("form").submit(function(e){

e.preventDefault();

var name = $("input[name='name']").val();

var email = $("input[name='email']").val();

$(".data-table tbody").append("<tr data-name='"+name+"' data-email='"+email+"'><td>"+name+"</td><td>"+email+"</td><td><button class='btn btn-info btn-xs btn-edit'>Edit</button><button class='btn btn-danger btn-xs btn-delete'>Delete</button></td></tr>");

$("input[name='name']").val('');

$("input[name='email']").val('');

});

$("body").on("click", ".btn-delete", function(){

$(this).parents("tr").remove();

});

$("body").on("click", ".btn-edit", function(){

var name = $(this).parents("tr").attr('data-name');

var email = $(this).parents("tr").attr('data-email');

$(this).parents("tr").find("td:eq(0)").html('<input name="edit_name" value="'+name+'">');

$(this).parents("tr").find("td:eq(1)").html('<input name="edit_email" value="'+email+'">');

$(this).parents("tr").find("td:eq(2)").prepend("<button class='btn btn-info btn-xs btn-update'>Update</button><button class='btn btn-warning btn-xs btn-cancel'>Cancel</button>")

$(this).hide();

});

$("body").on("click", ".btn-cancel", function(){

var name = $(this).parents("tr").attr('data-name');

var email = $(this).parents("tr").attr('data-email');

$(this).parents("tr").find("td:eq(0)").text(name);

$(this).parents("tr").find("td:eq(1)").text(email);

$(this).parents("tr").find(".btn-edit").show();

$(this).parents("tr").find(".btn-update").remove();

$(this).parents("tr").find(".btn-cancel").remove();

});

$("body").on("click", ".btn-update", function(){

var name = $(this).parents("tr").find("input[name='edit_name']").val();

var email = $(this).parents("tr").find("input[name='edit_email']").val();

$(this).parents("tr").find("td:eq(0)").text(name);

$(this).parents("tr").find("td:eq(1)").text(email);

$(this).parents("tr").attr('data-name', name);

$(this).parents("tr").attr('data-email', email);

$(this).parents("tr").find(".btn-edit").show();

$(this).parents("tr").find(".btn-cancel").remove();

$(this).parents("tr").find(".btn-update").remove();

});

</script>

</body>

</html>

You can also see demo....

I hope you found your best tutorial...