Итак, у меня есть файлы с списком таблиц, URL каждого файла сохраняется как атрибут данных на кнопке. При нажатии кнопки я хочу запустить Javascript/Ajax-вызов, который будет загружать файл по URL-адресу.Принудительная загрузка файла либо Ajax, либо Javascript
Теперь некоторые предостережения,
- Файл должен быть загружен с помощью диалогового окна загрузки или нужно просто быть добавлены к загрузке броузеров как и следовало ожидать.
- Запрос должен иметь возможность принимать заголовки, поскольку это запрос перекрестного домена.
- Это должно работать на основных браузерах (IE, Chrome, Firefox, Safari)
До сих пор я пытался использовать XMLHttpRequest:
e.preventDefault();
var csrftoken = getCookie('csrftoken');
var req = new XMLHttpRequest;
req.open("POST",$(this).data("url"));
req.setRequestHeader("MY HEADER", "HEADER VALUE;");
req.withCredentials = true;
req.send();
Я также попытался Ajax GET запрос (который не приводит к загрузке) и использует атрибут «Загрузить» на теге привязки (который не принимает заголовки).
Благодаря
Есть ли причина, по которой вы не можете просто использовать ''? – light
AJAX делает ровно 0 смысл. Просто используйте регулярные ' Mjh
@light: [caveat # 3, я полагаю.] (Http://caniuse.com/#feat=download) –