This post is a continuation of my previous post -Creating dynamic table using ajax call to database in java
Please check this post also.
To delete table row follow these steps .
step1: Add extra column 'delete' to the table. and call deleterow function onclick. todo this we have to add an extra <td> with onclick function in it.ckeck the code below.
step2: create a js function and write ajax function to delete table row using id.
<script>
function deleterow(id)
{
var data = 'deleted=deleted&&id=' + id;
$.ajax({
type: "POST",
url: "Handler2",
dataType: "json",
data: data,
success: function (html)
{
if (html.data == "deleted")
{
alert("deleted");
$(".txt1").remove();
fetchrow();
} else
{
alert("not deleted")
}
}
});
}
window.onload= fetchrow()
function fetchrow() {
var data = 'tabledata=tabledata';
$.ajax({
type: "POST",
url: "Handler2",
dataType: "json",
data: data,
success: function (data)
{
if (data.dataarray) {
$.each(data.dataarray, function (key, value) {
var id = value.id;
var name = value.name;
var place = value.place;
var gender = value.gender;
$("#tab").append("<tr class='txt1'> <td>" + id + "</td><td> " + name + "</td><td>" + place + "</td> <td>" + gender + "</td><td onclick='deleterow(" + id + ")'> delete </td></tr>");
});
}
}
});
}
</script>
step 3: Create Handler. call DeleteTable method which returns status as 0 if row is not deleted or integer value greater than 0 if the row is successful deleted. and return json object.
if (request.getParameter("deleted") != null)
{
JSONObject json2 = new JSONObject();
DAO d1 = new DAO();
int status = d1.DeleteTable(Integer.parseInt(request.getParameter("id")));
if (status > 0) {
json2.put("data", "deleted");
} else {
json2.put("data", " not deleted");
}
out.print(json2);
}
step 4:Create DAO .write deleteQuery inside statement.executeUpdate() method which returns number of deleted rows.
public int DeleteTable(int id) {
int status = 0;
try {
Statement st = (Statement) con.createStatement();
status= st.executeUpdate("delete from tab2 where id='" + id + "'");
} catch (Exception e) {
e.printStackTrace();
}
return status;
}