我从 SharePoint 库中检索电子邮件文档列表(*.eml 文件)。当该列表完成后,我会遍历它,将一些文件访问数据放入一个数组数组中。在此过程结束时,我有一组电子邮件文件名和其他访问数据。我遍历这个列表,通过 Ajax (jQuery) 打开每个电子邮件文件。当电子邮件内容返回给我时(来自非 Ajax 解码例程),我将其发送出去进行处理。
该处理是顺序相关的。我从访问数组中获取 email1,将其发送以进行解码,然后进行处理(本质上,将其写入列表)。我遇到的问题是,虽然我发送了 email1,然后是 email2,然后是 email3,但我从解码器得到的却是返回的感觉。也许是 1,2,3,也许是 1,3,2,也许是 3,2,1。因为我小心翼翼地确保按顺序处理电子邮件,所以我希望按顺序取回其内容。没有。
$.each(arIDs, function(index, value) {
//the following statement orders perfectly
$("#results").append("<br>dealing with " + arIDs[index][2]);
var ajaxPromise = $.ajax({
type:"GET",
url:"GFSSEForm/" + arIDs[index][2],
dataType:"text"
}).done(function(data) {
decodeEmail(data); //sets global arValues
$("#results").append("<br>" + arValues); //not returned in order passed
});
.
.
.
有任何想法吗?