2010-06-03 2 views
1

У меня есть приложение django, которое создает файлы xls и txt.Может ли jQuery восстановить файл?

Я пытаюсь создать кнопку, которая посылает jQuery.get запрос Джанго, Джанго затем возвращает недавно созданный файл JQuery, который, в свою очередь выскакивает открыть Сохранить как диалог.

Мой код выглядит следующим образом:

jQuery("#testButton").live("click",function() 
{ 
    jQuery.jGrowl("click"); 
    jQuery.get("/filetest",function(data){}); 

}); 


<div id="testButton" class="button">CLICK TO TEST</div> 

Получение файла в JQuery легко, но я понятия не имею, как потом поднять на Сохранить как диалог.

Любая помощь была бы фантастической!

ответ

2

Вы можете использовать iframe на своей странице и изменить с помощью jquery источник, в файл, который хотите загрузить.

этот код поместить в HTML тела:

<iframe id="download" style="width:0px;height:0px;display:none;"></iframe> 

и JQuery в случае щелчка выглядеть следующим образом:

$('#download').attr("src",location.href+"&make_excell=1"); 

в вашей стороне сервера отправить файл обратно, когда запрос make_excell с контент-тип

+0

работал с удовольствием, спасибо! – danspants

+0

Я нашел другой путь через плагин http://www.filamentgroup.com/lab/jquery_plugin_for_requesting_ajax_like_file_downloads/ –

0

Как насчет вызова window.open, который открывает файл на стороне сервера, который отправляет Content-Type вложения файлов вместе с содержимым файла в Body контента?

Смежные вопросы