a标签删除/提交【ajax】
PHP Code复制内容到剪贴板
- <?= Html::a('清空日志', Url::to(['delete-all']), [
- 'class' => 'btn btn-danger',
- 'data-ajax' => 1,
- 'data-confirm' => '是否确认清空,该操作不可恢复?',
- 'data-method' => 'post',
- 'data-refresh' => 1,
- ]) ?>
- <?= Html::a('清空日志', Url::to(['clear']), [
- 'class' => 'btn btn-danger',
- 'data' => [
- 'ajax' => 1,
- 'confirm' => '是否确认清空,该操作不可恢复?',
- 'method' => 'post',
- 'refresh' => 1,
- ],
- ]) ?>
data-refresh 完成后刷新当前页,如果需要刷新父页面,加一个data-load-parent="1",默认刷新当前页
data-callback 回调,直接写js即可
data-params 带参数传递,如:
PHP Code复制内容到剪贴板
- 'data-params' => [ 'time' => $model['time'] ],
- 'data-callback' => '$("#modal-login").modal("hide")'
- 'data-callback' => 'window.parent.location.replace("'.$callbackUrl.'");'
参考:系统设置 - 操作日志
index视图文件:
PHP Code复制内容到剪贴板
- [
- 'attribute' => 'description',
- 'value' => function ($model) {
- return Html::a(esub($model->description, 50, '...'), ['view', 'id' => $model->id], [
- 'class' => 'text-primary',
- 'data-layer' => '1', // 弹窗展示url地址
- 'data-title' => '查看'.$model->id.'错误日志', // 弹窗标题
- 'data-width' => '90%', // 弹窗宽度
- 'data-height' => '90%',// 弹窗高度
- 'target' => '_blank', // 重要
- ]);
- return esub($model->description, 50, '...');
- },
- 'format' => 'raw'
- ],
PHP Code复制内容到剪贴板
- [
- 'class' => 'yii\grid\ActionColumn',
- 'template' => '{create} {view} {update} {delete}',
- 'buttons' => [
- 'create' => function ($url, $model) {
- return Html::a("<span class='glyphicon glyphicon-plus'></span>", ['create', 'parentStatus' => $model->status], [
- 'class' => 'btn btn-default btn-xs',
- 'data-layer' => '1', // 弹窗展示url地址
- 'data-title' => '新增 [' . $model->name . '] 子项', // 弹窗标题
- 'data-width' => '80%', // 弹窗宽度
- 'data-height' => '80%',// 弹窗高度
- 'target' => '_blank'
- ]);
- }
- ]
- ],
例:
PHP Code复制内容到剪贴板
- public function actionClear()
- {
- Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
- // 清空表
- $database = SystemLog::tableName();
- $sql = "TRUNCATE TABLE $database";
- $command = Yii::$app->db->createCommand($sql);
- $command->execute();
- return [
- "errcode" => 0, //正常
- ];
- }
如果需要返回错误:
errcode = 1 表示有错误
errmsg = "错误信息"