当前位置: 首页 > 知识库问答 >
问题:

在Kartik Yii2 Kartik DetailView中添加自定义按钮

张勇
2023-03-14

我已经搜索并尝试了每个论坛和例子。

我正在Yii2中使用Kartik\DetailViwew,无法在buttons1选项中设置一个自定义按钮。

我正在处理的代码:

    echo DetailView::widget([
        'model' => $model,
        'attributes' => $attributes,
        'mode'=>Yii::$app->request->get('edit')=='t' ? DetailView::MODE_EDIT : DetailView::MODE_VIEW,
            'panel'=>[
            'heading'=>$this->title,
            'type'=>DetailView::TYPE_INFO,
            ],
        'buttons1' => '{update}',
        'bordered' => 'true',
        'striped' => $striped,
        'condensed' => $condensed,
        'responsive' => $responsive,
        'hover' => $hover,
        'hAlign'=>$hAlign,
        'vAlign'=>$vAlign,
        'fadeDelay'=>$fadeDelay,
        'deleteOptions'=>[ // your ajax delete parameters
          'params' => ['id' => $model->p_id, 'custom_param' => true],
          'url'=>['delete', 'id' => $model->p_id],
        ]

    ]);

在的

        'buttons1' => '{update}',

根据http://demos.krajee.com/detail-view例子,有一种方法可以定制。但是没有例子。留档没有解释如何做到这一点。

有人能帮忙吗?

共有2个答案

司徒鸿文
2023-03-14

试着这样做:

'buttons1' => Html::a('<i class="glyphicon glyphicon-trash"></i>', Url::to(['delete', 'id' => $model->id]), [
                   'title' => 'Eliminar',
                   'class' => 'pull-right detail-button',
                   'data' => [
                       'confirm' => '¿Realmente deseas eliminar este elemento?',            
                       'method' => 'post',
                   ]
           ]),

如果你有一个以上的按钮,尝试这样做:

$button1 = Html::a('<i class="glyphicon glyphicon-trash"></i>', Url::to(['delete', 'id' => $model->id]), [
                   'title' => 'Eliminar',
                   'class' => 'pull-right detail-button',
                   'data' => [
                       'confirm' => '¿Realmente deseas eliminar este elemento?',            
                       'method' => 'post',
                   ]
           ]);
$button2 = Html::a('<i class="glyphicon glyphicon-pencil"></i>', Url::to(['actualizar', 'id' => $model->id]), [
                   'title' => 'Actualizar',
                   'class' => 'pull-right detail-button',
           ]);


    'buttons1' => "{$button1} {$button2}",
姚雅珺
2023-03-14

经过研究和一些尝试,我这样做了,您必须启用编辑模式(显示按钮),并修改defatul模板({buttons}{title}),因为如果模板存在于vender GridView常量中,则此模板将被替换,只需插入代码添加您想要的任何按钮即可。不是rigth解决方案,而是一种行之有效的解决方案

<?php
$button1 = Html::a('<i class="glyphicon glyphicon-trash"></i>', Url::to(['delete', 'id' => $model->id]), [
                   'title' => 'Eliminar',
                   'class' => 'pull-right detail-button',
                   'data' => [
                       'confirm' => '¿Realmente deseas eliminar este elemento?',            
                       'method' => 'post',
                   ]
           ]);
$button2 = Html::a('<i class="glyphicon glyphicon-pencil"></i>', Url::to(['actualizar', 'id' => $model->id]), [
                   'title' => 'Actualizar',
                   'class' => 'pull-right detail-button',
           ]);
?>
<?=
DetailView::widget([
                   'model' => $model,
                   'hover' => true,
                   'hideAlerts' => true,
                   'enableEditMode' => true,
                   'mode' => DetailView::MODE_VIEW,
                   'hAlign' => 'left',
                   'panel' => [
                       'heading' => '&nbsp',
                       'type' => DetailView::TYPE_DEFAULT,
                       'headingOptions' => [
                           'template' => "$button1 $button2 {title}"
                       ]
                   ],
                   'attributes' => [
                       'id',
                       'identificacion',
                       'nombre',    
                   ],
         ])
?>
 类似资料:
  • 问题内容: 我想制作一个简单的表,其中包含一行自定义按钮。当按下按钮时,我想弹出一个“警告”框。我已经阅读了一些关于此的文章,我不明白为什么我的代码无法正常工作。绘制了按钮,但按下按钮无效。 我在这里描述了三种尝试。 版本1。单击按钮不会触发: HTML代码: 编辑8/2/12-自从我的原始文章以来,我已经学到了一些东西,在这里我描述了另外两次尝试。 版本2:我使用onCellSelect。这行得

  • 我做了,有一个按钮,我想在通知和按钮点击上执行两个不同的

  • 我在这里看到了一些例子:http://docs.oracle.com/javase/7/docs/api/javax/swing/joptionpane.html 它似乎表明我应该用一个自定义的按钮列表来替换我的组合框,这不是我想要的。我需要有3个按钮(好的,跳过,取消),以及项目列表。 更新:为了说明我的GUI应该是什么样子: null 目前我的代码如下所示: 灵感来自:Java:showInp

  • 是否有一个时间格式来指定这样的日期序列到轴在D3和v4?

  • 我想在WordPress Rest API中添加自定义endpoint。我能够通过创建简单的插件来获取此代码的帖子ID,标题,内容,slug,类别和featured_image。我在代码中获得了类别ID。我想要类别名称,我试图通过来执行此操作,但没有理解它。如何通过自定义终结点获取类别名称,作者姓名和作者个人资料图像。我也是wordpress的初学者。我参考了文档,但不明白该怎么做。将其写w_po

  • 我已按照此说明为我的WooCommerce订单添加自定义订单状态。 我找不到创建自定义操作按钮的方法,该按钮可将订单状态从管理订单列表页面更改为我的自定义状态,如下图所示: 我想为具有“处理”状态的订单显示此自定义操作按钮。 我在WooCommerce留档中找不到任何答案。 有没有钩子可以套用这些按钮? 如何将其添加到中? 非常感谢。