Показать сообщение отдельно
  #1 (permalink)  
Старый 23.06.2011, 13:55
Новичок на форуме
Отправить личное сообщение для Vglaz Посмотреть профиль Найти все сообщения от Vglaz
 
Регистрация: 23.06.2011
Сообщений: 2

IE6. отдать пользователю файл и закрыть окно
в IE6 обнаружилось странное поведение. Причем на одних Пк все нормально, на других такой косяк.

Открывается окно, которое отображает процесс генерации отчета. как только отчет готов, он идет запрос на скачивание файла отчета, и вот здесь окно "отображения генерации отчета" должно закрыться.

скрипт выполняющий это действие такой:

window.location = "getfile.axd?xxxxx";
window.close();


В IE ( не IE6) и FF все работает нормально. а вот в некоторых IE6 окно не закрывается.

использование window.open("getfile.axd?xxx"); приводит к появлению нового пустого не закрытого окна от скачавшегося файла.

специально для IE6 были внесены изменения:

...
 window.location ="getfile.axd?xxxxx";
 setTimeout(winClose, 2000);

...

function winClose() {
   close();
   setTimeout(winClose, 5000);
}


Делается так, потому что появившийся диалог для сохранения файла не дает закрыть окно IE6. Вот мы в цикле и пытаемся его закрыть. Но здесь при не успешном выполнении close() присходит бипер из динамика ПК. И так он пищит пока не скачаешь файл.
Самый прикол что такое только в некоторых IE6. И млин отказаться от IE6 нельзя, т.к. он прописан в ТЗ и заказчику он нужен.

Кто подскажет, как можно скачать файл и закрыть лишние окна?
Ответить с цитированием