我想知道使用 jquery 循环遍历 html 元素时异步调用是如何工作的。我知道异步调用在进行服务器调用时不会停止迭代。这意味着,即使来自调用的响应尚未完成,脚本也会立即按顺序迭代下一个元素。
我的问题是,在每次调用时,我都设置了不同的值,如下所示:
$(".businessUnit").each(function (index) {
var $element = $(this);
var iUCBU_KEY = $element.prop('data-iucbu_key');
var iENTE_KEY = $element.prop("data-iente_key");
$.ajax({
method: 'post',
url: '/CodeBase/LoadInsertCATETE_BASE1/',
data: {
iUCBU_KEY: iUCBU_KEY,
iENTE_KEY: iENTE_KEY
},
success: function (response) {
//will there be $element from sequence when call was made?
$element.find('input.price').val(response.price);
},
error: function (response) {
}
});
});
哪个 $element 将被更新?它是调用的 $element 还是当前迭代的 $element ?来自服务器的响应可能需要几秒钟,因此迭代可以在调用 - 响应之间进一步处理几个元素。
繁星淼淼
相关分类