我對JavaScript比較陌生,雖然我知道是什麼導致了這個錯誤,但我不確定如何重構這個工作。在jQuery「ajax」中關閉工作方法
for (...) {
var variableQueryValue = i
addLink.bind('click', function() {
$.ajax({
type: 'POST',
url: '/example',
data: 'queryvalue=' + variableQueryValue,
success: function(data) {
console.log('Got into success method!');
}
});
});
}
所以基本上我們綁定一個click事件的一些元素,其數據屬性依賴於一些variableQueryValue改變每次迭代。由於綁定函數處理程序的關閉,在ajax請求中,它將綁定一個事件處理程序,該處理程序爲每次迭代使用相同的variableQueryValue值。
我該如何重構這個,以便將更新的variableQueryValue考慮在內?
感謝您的幫助!
感謝您的回答。感謝所有回答的人。我會看看,看看哪一個最適合我的情況:) – PolandSpring
這些答案中的很多答案都是一樣的(或者幾乎相同的東西),只是語法不同而已。因此,如何編寫代碼實際上是個人偏好。 –