以下は私のhome.jspをページ私は削除のリンクをクリックしたときに私のAjaxの機能は、動作していないが、しかし、編集リンクのために働く
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>welcome</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
</head>
<body onload="load();">
<input type="hidden" id="empId">
Name: <input type="text" id="emp_name" required="required" name="empName"><br>
Address: <input type="text" id="emp_address" required="required" name="empAddress"><br>
Salary: <input type="text" id="emp_salary" required="required" name="empSalary"><br>
<button onclick="submit();">submit</button>
<table id="table" border="1">
<tr>
<th>Name</th>
<th>Address</th>
<th>Salary</th>
<th>edit</th>
<th>delete</th>
</tr>
</table>
</body>
<script type="text/javascript">
data = "";
load = function() {
$.ajax({
url: 'getlist',
type: 'get',
success: function (response) {
data = response.data;
$('.tr').remove();
for (i = 0; i < response.data.length; i++) {
$("#table").append("<tr class = 'tr'> <td>" + response.data[i].empName + "</td> \t <td>" + response.data[i].empAddress + "</td> <td>" + response.data[i].empSalary + "</td> <td><a href ='#' onclick = 'edit(" + i + ");'> edit </a> </td> <td> <a href ='#' onlclick = 'deleteEmp(" + response.data[i].empId + ");'> delete </a></td></tr>")
}
}
});
}
edit = function (index) {
//when we click on edit, those value should be available in our table fields.
$("#empId").val(data[index].empId);
$("#emp_name").val(data[index].empName);
$("#emp_address").val(data[index].empAddress);
$("#emp_salary").val(data[index].empSalary);
}
submit = function() {
$.ajax({
url: "saveOrUpdate",
method: "post",
data: {
empId: $("#empId").val(),
empName: $("#emp_name").val(),
empAddress: $("#emp_address").val(),
empSalary: $("#emp_salary").val()
},
success: function (response) {
alert(response.message);
load();
}
});
}
deleteEmp = function (Id) {
$.ajax({
url: 'delete',
method: 'put',
data: {empId: Id},
success: function (response) {
alert(response.message);
load();
}
});
}
</script>
</html>
あるアイデア私は、削除リンクをクリックしたときです、 delete関数を呼び出す必要があります。この関数は、Springコントローラクラスとやりとりすることができますが、期待通りに機能しません。 私はまた、期待どおりに動作している編集リンク(これは削除と全く同じです)を与えました。だから私は本当に混乱しており、問題をデバッグすることができません。
私はこのすべてに非常に新しく、自分で学習するので、助けが必要です。
コンソールを確認してください。何かエラーが出ていますか?任意のデータを返すサーバーですか?成功メソッドに 'debugger'を置き、' response'変数の値を確認してください。また、ajax呼び出し中にエラーが発生したかどうかを知るためにajax呼び出しを使用している間は常に 'error'メソッドを使用してください。 –
また、 'jqXHR.success()'、 'jqXHR.error()'、 'jqXHR.complete()'コールバックは** jQuery 1.8 **のように非推奨です。最終的に削除するためのコードを準備するには、代わりに 'jqXHR.done()'、 'jqXHR.fail()'、 'jqXHR.always()'を使います。 –
'メソッド: 'put'、' ?? –