загрузить файл из ajax

#php #jquery #ajax

#php #jquery #ajax

Вопрос:

Я настраиваю некоторый экспорт html в Excel и делаю это через jquery $.post. Результатом являются данные

 $.post('/exportToExcel.php', function(data) {    
    // data is the file i want to download now... how to trigger it?
});
  

данные — это возвращаемое значение (файл) с сервера, простое выполнение alert (data) приведет к выводу большего окна, полного lol. как мне запустить, чтобы файл можно было загрузить?

Комментарии:

1. Просто для справки, хранится ли этот файл в какой-либо точке? Вы пытаетесь вернуть фактический файл в data или его относительный путь?

Ответ №1:

Вы не можете сделать это с помощью Ajax. Загрузите файл в iframe и отправьте этот HTTP-заголовок вместе с файлом:

 Content-Disposition: attachment
  

Комментарии:

1. разве я не могу просто установить src iframe для данных и перезагрузить iframe?

2. Как вы устанавливаете src в data? Вы устанавливаете для него URL-адрес.