У меня есть это PHP файл с именем print.php:Использование PHP DOMPDF и AJAX для загрузки файла PDF
<?php
require_once("modules/pdf/dompdf_config.inc.php");
$html = $_POST["toRender"];
$number = $_POST["number"];
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
$dompdf->stream($number.".pdf");
Как вы можете видеть, HTML и номер принимаются через POST.
Файл JavaScript выглядит следующим образом:
$("#btnViewPDF").click(function() {
var theHtml = $("#printable").html();
var theNumber = $("#invoiceNumber").val();
$.ajax({
type : "post",
url : "views/print.php",
data : {toRender : theHtml, number : theNumber},
beforeSend: function() {
$(".ajax-loader-bg").fadeIn();
}
}).always(function() {
$(".ajax-loader-bg").fadeOut();
});
return false;
});
В основном он принимает все содержимое внутри DIV под названием «версия для печати», но то, что я хочу, это следующий PDF, который был сформирован в print.php для отображения
, Я не смог понять, как это сделать.Я заработал, когда я создаю тестовый HTML внутри print.php, а затем набираю url mysite.com/print.php ... он отображает PDF-файл и позволяет загрузить его или просмотреть его в другой вкладке браузера.
Как я могу достичь этого через AJAX?
Очень внимательный человек! Хотя я пошел к сейфу. Я сделал другую страницу для каждого формата PDF, в котором я нуждался. Я буду проверять, могу ли я сделать эту работу правильно с помощью этого метода! – JuanBonnett