是否可以通过点击javascript操作将图像(pdf打印)添加到网格列? 像:
$g->addColumn('button','edit','Edit');
但是使用img html元素。
答案 0 :(得分:0)
最简单的是:
$g->addColumn('template','pdf_print')
->setTemplate('<a href="'.
$this->api->getDestinationURL('pdfprint').
'?id=<?$id?>"><img src="printicon.png"></a>');
替代方法是定义自己的格式化程序。我还展示了如何向列中添加全局javascript处理程序,但仍然传递了&#34; id&#34;点击了记录。
function format_pdfbutton($column){
$this->current_row[$column]=
'<img src="printicon.png" class="print_'.$column.'"/>';
}
function init_pdfbutton($column){
$this->js('click')->selector('.print_'.$column)->frameURL('Print Frame',
array(
$this->api->getDestinationURL('print'),
'id='>$this->js()->_selectorThis()->closest('tr')->attr('del')
));
}
$g->addColumn('pdfbutton','print_my_pdf');
我还没有测试过上面的代码,但您也可以查看&#34; Grid&#34;源和常规按钮的定义方式(Grid :: format_button,Grid :: init_button)。