PdfResponse přes ajax nefunguje, bez chyby v console
- Mira8
- Člen | 36
Ahoj snažím se vytvořit pdf dokument z části html stránky. Kód vypadá následovně:
<button id="savePdf">SAVE AS PDF</button>
<script type="text/javascript">
$('#savePdf').on('click', function () {
$.nette.ajax({
type: 'POST',
url: {link savePdf!},
data: {
formData: JSON.stringify(
$('.results').html()
)
}
});
});
</script>
public function handleSavePdf()
{
$data = $this->getHttpRequest()->getPost();
$template = json_decode($data['formData']);
$pdf = new \Joseki\Application\Responses\PdfResponse($template);
$pdf->setSaveMode(\Joseki\Application\Responses\PdfResponse::DOWNLOAD);
$this->sendResponse($pdf);
}
Po kliku se nic nestane v console žádná chyba není. Viz screen https://pasteboard.co/GJeYP6j.png V čem může být problém?
Díky
- Mira8
- Člen | 36
matopeto napsal(a):
Co by sa malo stat, ked s tym response nic nerobis? :)
ocekaval jsem force file to download :) viz. https://github.com/…/PdfResponse
- iguana007
- Člen | 970
BUdto jak rika @matopeto nebo takto: https://stackoverflow.com/…-jquery-ajax
Editoval iguana007 (7. 9. 2017 12:20)
- Mira8
- Člen | 36
iguana007 napsal(a):
BUdto jak rika @matopeto nebo takto: https://stackoverflow.com/…-jquery-ajax
jde o to ze, na strance generuju ajaxem data ktere na te same strance vypisuju, data potrebuju umoznit stahnout v pdf bez reload page :/ a zaroven to potrebuju na backendu, predelavam z js
- Rob Bob
- Člen | 60
Ale když ty data z formuláře odešleš normálně a přijde ti jako odpověď soubor (v hlavičce bude Content-Disposition: attachment; filename=…), tak by se ti ta stránka neobnovit neměla. Jestli potřebuješ data nejprve vypsat na stránku, tak je si je při tom ajaxovém odesílání navíc třeba ulož do session a zobraz je přes snippet no a pak dej stažení souboru přes tlačítko už normálně s postupem viz výše.
Editoval Rob Bob (7. 9. 2017 14:14)