In this article , we will show you Add Edit Delete Table Row Example with JQuery. I will tell you that how to add edit and delete rows of a html table with javascript or jquery. i will create very simple example , edit html table row using jquery and remove table row on button click.
<!DOCTYPE html> <html> <head> <title>Add Edit Delete Table Row Example with JQuery - CodePlaners</title> <link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet"> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script> </head> <body> <div class="container"> <h2>Add Edit Delete Table Row Example with JQuery - CodePlaners</h2> <form> <div class="form-group"> <label>Name:</label> <input type="text" name="name" class="form-control" value="CodePlaners" required=""> </div> <div class="form-group"> <label>Email:</label> <input type="text" name="email" class="form-control" value="codeplaners@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>Action</th> </thead> <tbody> </tbody> </table> </div><!-----------container--------------> <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>