【问题标题】:Yii CListView - Adding a manual itemYii CListView - 添加手动项
【发布时间】:2014-11-27 20:03:18
【问题描述】:

我在我的 Yii 应用程序中使用 YiiBoostrap,我有一个 TbListView 输出一些图像。

<?php
        $this->widget('bootstrap.widgets.TbListView',array(
            'dataProvider'=>$dataProviderModerator,
            'id'=>'website-grid',
            'itemView'=>'_viewWebsite',
            'template'=>'{items}',
            'itemsCssClass'=>'grid-group row m-t-25',
            'cssFile'=>false,
            'summaryText'=>false,
            'pager'=>array(
                'header'=>'',
                'cssFile'=>false,
                'maxButtonCount'=>10,
                'selectedPageCssClass'=>'active',
                'hiddenPageCssClass'=>'disabled',
                'prevPageLabel'=>'&lsaquo;',
                'nextPageLabel'=>'&rsaquo;',
            ),
            'htmlOptions'=>array('class'=>'')));
?>

输出

我想在上面生成的列表的末尾手动添加一个 div,我期待这样的结果

我该怎么做?

【问题讨论】:

  • 这个 div 的用途是什么?
  • 打开一个模态以在点击时添加一个新项目

标签: php yii yii-extensions


【解决方案1】:

您可以通过添加带有元素的自定义 HTML 来修改您的 'template'=&gt;'{items}', 属性:

'template'=>'{items}<div id="my_custom_element">Foo bar</div>',

或以更“优雅”的方式相同:

// regarding your 'itemView'=>'_viewWebsite'
$item = $this->renderPartial('_viewWebsite', array(
    'your' => 'custom',
    'vari' => 'ables',
));

'template'=>'{items}'.$item,

【讨论】:

    【解决方案2】:

    用 jQuery 一定可以:

    $('<div id="my_new_element">HUGE PLUS SIGN with all functionality</div>')
        .appendTo('#website-grid');
    

    您可以将它放在一些 JavaScript 函数中,并在需要时调用它。例如。第一次或afterAjaxUpdate 在您的TbListView。这只是一个想法。看看create DOM elementCListView::afterAjaxUpdate() 是如何做到的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多