2015-03-30 4 views
2

Я хочу открыть новое окно (с jQuery) и показать PDF из содержимого base64. Когда я делаю нормальное соединение:Как открыть новое окно с содержимым base64 PDF?

<a href=\"data:application/pdf;base64,'.$answer->shipping_label_content.'\" target=\"blank\">Show PDF</a> 

Это все хорошо. Но я хочу автоматического открытия нового окна с этим содержанием, и я не знаю, как: -/

var window = window.open(); 
var html = "data:application/pdf;base64,'.$answer->shipping_label_content.'"; 

$(window.document.body).html(html); 

ответ

3

Вы можете создать темп anchor и нажмите программно.

//this trick will generate a temp <a /> tag 
var link = document.createElement("a"); 
link.href = "data:application/pdf;base64,'.$answer->shipping_label_content.'"; 

//Set properties as you wise 
link.download = "SomeName"; 
link.target = "blank"; 

//this part will append the anchor tag and remove it after automatic click 
document.body.appendChild(link); 
link.click(); 
document.body.removeChild(link); 
+0

Эта работа, как window.open ("данные: применение/PDF; base64, '$ ответа-> shipping_label_content.'.", "_blank", ''); но Safari заблокирован первый и второй: -/ –

+0

Это решение не работает для IE.Any альтернативного решения, чтобы сделать эту работу в IE? –

+0

@Siddharth_Vyas, вы можете посмотреть [FileSaver] (https://github.com/eligrey/FileSaver.js/) – Satpal

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