Я хочу загрузить массив файлов XML и сохранить их в массиве.
Пример кода:
var src = [ "a", "b", "c", "d" ];
var dest = {};
for (var i in src) {
var req = new XMLHttpRequest();
req.open("GET", src[i], true);
req.onreadystatechange = function(aEvt) {
if (req.readyState == 4) {
if (req.status == 200) {
dump(i + "\n");
dest[i] = req.responseXML;
}
}
}
req.send(null);
}
Однако, результат дампа всегда
3
3
3
3
Это показывает, что i
, на который ссылается обратный вызов, всегда является внешним i
, поэтому файлы XML не могут быть сохранены правильно.
Итак, как решить эту проблему? У нас есть около 50 файлов XML для загрузки, и загрузка их по одному недопустима.
Спасибо.