【发布时间】:2013-10-19 04:15:23
【问题描述】:
jquery中的.each方法不会等到ajax调用成功。
$("img[name='statusIcon']").each(function () {
var statusIcon = $(this);
statusIcon.attr('src', 'images/spinner.gif'); //loading image will be here
var row = $(this).parent().parent().attr("id");
var HostName = $("#" + row + " td[name='Public']").attr("title");
var Pass = $.trim($("#pass_word" + row).attr("realValue"));
$.ajax({
type: "POST",
url: "validate.php",
data: "HostName=" + HostName + "&uName=root&Pass=" + Pass + "&localCounter=" + stepCounter,
success: function (res) {
console.log(res);
if (res == 0) {
statusIcon.attr('src', 'images/tick-mark.jpg'); //success image will be here
} else {
statusIcon.attr('src', 'images/cross_icon.jpg'); //fail image will be here
}
}
});
});
这里是代码FIDDLE!
.each 在我的第一个 ajax 调用响应之前完成,而它应该为每个 ajax 调用循环。
当它完成上一个 ajax 调用时,继续循环。
【问题讨论】: