以下是我想用AJAX完成的事情。我從來沒有使用過AJAX,所以我甚至不確定我想要完成的是否正確使用。我試圖加快網站用戶可以刪除收件箱中累積的某些郵件的速度。在我的網站以前的版本中,每次刪除可能變得非常慢的消息時,頁面都必須刷新。爲了解決這個問題,我決定不用在用戶按下「刪除」按鈕時觸發表單,而是在客戶端設置jquery來清除消息html,然後發送一個異步POST請求,告訴服務器從數據庫。麻煩製作AJAX請求
$(document).ready(function() {
$(".deleteButton").click(function() {
var id = $(this).attr('id');
$("tr#"+id).slideUp("fast");
$.ajax({type: "post",
url: "/message",
data: {"delete_mes": id}});
});
});
這幾乎奏效。每當我點擊刪除消息消失,當我重新加載頁面它仍然消失,顯示服務器已成功刪除該消息。但是,在重新加載頁面之前刪除多條消息時,除第一條消息之外的所有消息都會重新出現。
希望在ajax有更多經驗的人會知道什麼是錯的。我的服務器使用Google App Engine進行設置。謝謝!
它看起來好像你有重複的ID,我會建議先解決這個問題。 – 2013-03-13 18:22:39
難道只是刪除多個而不是不夠? – Harrison 2013-03-13 18:54:05
我不知道,因爲使用無效的html可能有*不可預知的結果。 – 2013-03-13 18:57:03