我有兩個AJAX功能看起來像這樣:ajax調用後重置變量?
$("body").on("click", ".follow", function() {
var followingId = $(this).data("following");
var followData = {"following_id" : followingId}
$(this).addClass('disabled');
$.ajax({
url: "https://stackoverflow.com/users/follow/",
type: "POST",
data: followData,
dataType: 'json',
context: this,
error: function() {},
success : function (response) {
$(this).addClass('unfollow');
$(this).attr('data-unfollow', response.row_id);
$(this).removeClass('follow');
}
});
});
$("body").on("click", ".unfollow", function() {
var unfollowId = $(this).data("unfollow");
var unfollowData = {"row_id" : unfollowId};
$(this).addClass('disabled');
$.ajax({
url: "https://stackoverflow.com/users/unfollow/",
type: "POST",
data: unfollowData,
context: this,
error: function() {},
success : function() {
$(this).removeClass('disabled');
$(this).addClass('follow');
$(this).removeClass('unfollow');
}
});
});
當我「跟隨」的用戶,我得到了「ROW_ID」(讓我們說ROW_ID N°1)作爲響應,並設置爲取消關注數據。如果我「取消關注」用戶,則發送row_id n°1。這是正常的。
如果我再試一次,我會得到一個新的row_id(讓我們假設第2行)作爲響應。這也很正常。但是,如果我想再次取消關注,則會發送row_id n°1! 我想我應該更新
var unfollowId = $(this).data("unfollow");
(HTML中的值已更改爲ROW_ID N°2),但是當我張貼ROW_ID N°1被髮送。
我可以做到這一點嗎?
非常感謝!
不能告訴你在問什麼。 – jfriend00
當我使用第一個函數時,我得到一個row_id作爲響應。我將其設置爲數據屬性。如果我重用第一個函數,我得到一個新的row_id,我將其設置爲data屬性,但如果我使用第二個函數,則發送的row_id仍然是第一個函數。 – Ziplo