Выдача файла в браузер на загрузку через AJAX
Здравствуйте. Столкнулся с такой проблемой и вроде бы не могу найти верного решения.
Есть у меня на сервере скрипт, который приняв POST-запрос с данными от пользователя выдаёт в браузер на загрузку тот или иной файл (форма "сохранить файл как..."). То есть отдаёт определённые заголовки, а потом содержимое всего файла.
Весь процесс работы выглядет так. Пользователь заходит на сайт, заполняет форму на страничке, и она методом POST уходит на сервер. В ответ появляется окно загрузки файла.
Теперь мне нужно сделать следующее. Пользователь заходит на страничку, жмёт на ссылку. Открывается диалог созданный с помощью dijit.Dialog. В нём пользователь заполняет форму, и жмёт кнопку. И каким-то образом, нужно в этот момент скрыть диалог и выдать пользователю на загрузку необходимый файл. Единственное, до чего я пока додумался - сделать невидимую форму на основной странице. Пользователь открывает диалог и видит дубль скрытой формы с основной страницы. Заполняет её, жмёт "скачать", диалог исчезает, введённые данные помещаются в невидимую форму и вызывается её submit.
Но может быть есть способ намного лучше и проще?
|