У меня есть требование получить файл из API, который возвращает filedata в формате base64. Я добавляю, что <a href
тег, который выглядит, как показано нижеКак запустить загрузку файла из href вручную
<a id="myFile" href="data:image/png;base64,..." click="downloadFile()">Download File</a>
Так что я хочу, чтобы вызвать FileDownload с помощью $('#myFile').click()
, которая собирается downloadFile()
функции, но я не могу использовать location.href как я не хочу страницу для перенаправления.
Есть ли альтернатива для этого требования? Любые предложения были бы большой помощью.
ПРИМЕЧАНИЕ: Я получаю значение href динамически с некоторым ответом ajax после нажатия ссылки, изначально href устанавливается в # и будет заменен соответствующей загружаемой строкой, как указано выше. Я хочу запустить загрузку файла вместе с тем же событием, которое вызвало запрос ajax, а не отдельным событием клика.
ограниченной поддержки браузера. Вот только решение Chrome. http://stackoverflow.com/a/15832662/5496966 .. Вы также можете заменить тип приложения на «data: image/png» на 'data: application/octet-stream' .. он заставляет браузер загружать вместо переходя к значению href. – AA2992
Также можно загрузить файл bin. Вам придётся дать ему имя и файл с любым способом, с которым вы работаете. – AA2992
Awsome Ankith. Это действительно сработало. Есть все равно, чтобы сделать его мультибраузером. Просто упомяните об этом в правильном ответе, отметьте это правильно. Спасибо за помощь. –