<?php namespace App\Distributor\Actions; use Dcat\Admin\Grid\BatchAction; use Illuminate\Http\Request; use App\Distributor\Forms\ImportProduct; use Dcat\Admin\Widgets\Modal; //批量复制导入,最终在form importProduct class BatchCopy extends BatchAction { protected $title = '产品导入'; /** * 重写弹出的表单 * @return Modal|string */ public function render() { // 实例化表单类 $form = ImportProduct::make(); return Modal::make() ->lg() ->title($this->title) ->body($form) // 因为此处使用了表单异步加载功能,所以一定要用 onLoad 方法 // 如果是非异步方式加载表单,则需要改成 onShow 方法 ->onShow($this->getModalScript()) ->button($this->title); } /** * 填充选择的产品ID * @return string */ protected function getModalScript() { // 弹窗显示后往隐藏的id表单中写入批量选中的行ID return <<<JS // 获取选中的ID数组 var key = {$this->getSelectedKeysScript()} $('#product_ids').val(key); JS; } }