如何在 Yii2 视图中使用 mpdf 和 pjax?

how to use mpdf and pjax in Yii2 view?

我在这里使用 pjax 表单,我有打印按钮和提交按钮,如下所示。

<?= Html::submitButton('Submit', ['name' => 'form', 'value' => 'submit']) ?>
<?= Html::submitButton('Pdf', ['name' => 'form', 'value' => 'pdf']) ?>

我将像下面这样在控制器中捕获两个提交

 public function actionRetail()
{
 $model = new Retail();
 if (Yii::$app->request->post('form') == 'submit') 
 {
    $model->saveRetail();
    $this->redirect("/Details");
}
if (Yii::$app->request->post('form') == 'pdf') 
{
    $mpdf= new \Mpdf\Mpdf();
    $mpdf->WriteHTML($this->renderPartial('DetailsPdf'));
    $mpdf->Output('details.pdf','D');   
}
  return $this->render('View',['model'=>$model]);
}

在此表单中提交工作正常,但如果每当单击 pdf 按钮而不是下载 pdf 时,它会在同一页面显示编码数据,如 below.If 我删除 pjax 它工作正常。请帮助任何人如何在 pjax 视图中使用 mpdf。

%PDF-1.4 %���� 3 0 obj <> /Contents 4 0 R>> endobj 4 0 obj <> stream x��[Msܸ�Y���C

// Define a new \Mpdf\Mpdf document using utf-8 fonts
$mpdf = new \Mpdf\Mpdf(['mode' => 'utf-8']);

view this link

您需要为 pdf 按钮禁用 pjax。只需添加 'data-pjax' => 0

<?= Html::submitButton('Pdf', ['name' => 'form', 'value' => 'pdf', 'data-pjax' => 0]) ?>