我正在使用Laravel 5为仓库生成一个表单。在主表单中,您可以选择要获取的项目,它应该生成一个PDF与项目(所有的信息),人们得到的项目,日期和发票号码。
所有信息都在一份名为“发票”的DIV上。如何将此对象发送到新视图以生成PDF。我读到了关于“通过fit网络调用dompdf”以使其更具交互性的文章,但是文档不够清晰,或者不符合我所需要的。这是我的当前代码:From:

Recibo.js
$('#createPDF').click(function()
{
$htmlData = "data";
$_token = $('[name="_token"]').val();
$.get('recibos/pdf',{ html:$htmlData, _token: $_token })
.done(function(data)
{
console.log('Done PDF!');
});
});ReciboController.php
public function reciboPDF(Request $request)
{
$data = $request->get('html');
$pdf = \PDF::loadView('create.template.formReciboPDF',compact('data'))->setPaper('letter')->setOrientation('landscape');
return $pdf->stream();
//return view('create.template.formReciboPDF');
}formReciboPDF.blade.php
<tr>
<td>{{$data}}</td>
<td>Papeleria</td>
<td>Unidad</td>
<td>Grande</td>
<td>La Palma</td>
<td>2342423424234</td>
<td>Bueno</td>
<td>9</td>
</tr>发布于 2015-07-02 17:44:30
您可以将选择参数发送到服务器并重新编辑页面,而不是试图捕获HTML吗?然后,您只需将生成的HTML输入dompdf并呈现即可。如果视觉外观很重要,可以使用隐藏复选框作为选择机制。
如果要使用快捷方式,可以使用jQuery.contents()捕获HTML。
在第二部分中,您似乎试图通过AJAX发送请求并取回PDF。虽然这是technically possible,但它的麻烦比它的价值还多。一个更容易的选择是将隐藏的表单提交到空白窗口。它将需要对HTML/JS进行一些小的更改,但是很少需要其他的修改。
$('#createPDF').click(
function() {
$('#html').val($('#invoice').content());
$(this).closest('form').submit();
});<form method="POST" action="recibos/pdf" target="_blank">
<input type="hidden" name="html" id="html" value="" />
<input type="hidden" name="_token" value="{value from server}" />
<button type="button" id="createPDF">Create PDF</button>
</form>
https://stackoverflow.com/questions/31190440
复制相似问题