我需要在CGridview
中查看患者的详细信息,当我点击网格中的图标时,它应该打印患者的详细信息(位于更新页面中)。
已经尝试window.print()
和(.class).printPage()
,但不知道如何实现这些?
答案 0 :(得分:0)
在CGridView
电话中(可能在您的患者观点的管理员视图中),添加其他按钮,如下所示:
array(
'class'=>'CButtonColumn',
'template'=>'{printbutton}{view}{update}{delete}',
'buttons'=>array(
'printbutton' => array(
'label'=>'Print',
'imageUrl'=>Yii::app()->request->baseUrl.'/images/print_icon.png',
'url'=>'Yii::app()->createUrl("patient/printitem", array("id"=>$data->id))',
),
),
),
你会看到这个:
id
此控制器/操作现在必须选择患者记录,然后渲染视图,如:
public function actionPrintitem(){
$model = Patient::model()->findByPk($_REQUEST['id']);
$this->render("printitem",array(
"model" => $model
));
}
现在,在此视图中(您必须创建),只需在页面加载后放置window.print();
即可,这将打开浏览器打印窗口