Tengo un enlace y cuando el usuario hace clic en él, obtiene un PDF. En jQuery, creo una llamada POST ajax al servidor para obtener el PDF. La respuesta es un PDF, con encabezados de contenido correctos, etc. que normalmente provocarían que el navegador abra el complemento de Reader o que el usuario guarde el PDF. Pero en mi caso, esto no está funcionando. ¿Hay alguna forma de establecer el tipo de contenido de datos o establecer el tipo de contenido en PDF?jQuery Ajax: respuesta en pdf
Mi llamada AJAX:
$('#sf_getpdf').click(function() {
$.ajax({ //create an ajax request to load_page.php
type: "POST",
url: "index.php?route=sale/order/superfaktura_getpdf&token=<?php echo $token; ?>",
data: 'invoice_id=<?php echo $invoice_id; ?>&sf_token=<?php echo $sf_token ?>', //with the page number as a parameter
dataType: "text", //expect html to be returned
success: function(msg){
if(parseInt(msg)!=0) //if no errors
{
document.write(msg)
}
}
});
});
Firebug, la respuesta:
de respuesta en el navegador ...
ya traté de configurar el tipo de contenido en el servidor Sin éxito:
Editar: El Ajax no es necesario, para hacer esto.
<a id="adr_stitok" target="_blank" href="index.php?route=sale/order/superfaktura_getpdf&token=<?php echo $token; ?>&invoice_id=<?php echo $invoice_id; ?>&sf_token=<?php echo $sf_token ?>" >Download</a></td>
va a hacer la cosa.
document.write() no está destinado a ser utilizado por el estilo. Es mejor que solo envíe al usuario a una nueva página. – Corbin
Ahhh, soy estúpido. Download No necesito ajax para hacer esto. :) – Adrian
¿Por qué no simplemente hipervínculo al enlace pdf? o hacer una post solicitud a través del formulario? – John