$(".room").each(function() {
i = i + 1;
alert(i);
roomid = $(this).attr("id");
alert(roomid);
$.get("QueryRoom.aspx?ID=" + roomid, function (data) {
$("#" + roomid).html(data);
});
});
});
似乎在我的查詢中間roomid沒有更新,並被卡在#22(最後房間ID)。獲取請求執行正常,因爲我可以看到div更改內容。變量不在每個循環更新 - JQuery
任何人都可以幫忙嗎?
在您的第一次獲取請求返回時,您的循環已完成,所以roomid變量代表最後一個數據 –
這是因爲您每次執行該函數時都重新定義了i。 (或更好..讓我成爲默認值,因爲它沒有在函數的新運行時定義)。如果您希望我保持在觸發事件之間,則需要在功能外追蹤它並將其帶入功能。 – Silvertiger
@olly_uk我有這樣的感覺 - 我該如何防止這種情況? –