0

如何在 YII bootstrap.widgets.TbGridView 中添加下拉列表。

$this->widget('bootstrap.widgets.TbGridView',  array(
    'id'=>'customer-grid',
    'type'=>'striped bordered condensed',
    'dataProvider'=>$model->search(),
    'filter'=>$model,
    'columns'=>array(
        'surname',
        'name',
        'middlename',
        'dateOfBirth',
        array(
            'class'=>'bootstrap.widgets.TbButtonColumn',
            'template'=>'{add}',
            'buttons'=>array(
                'add' => array(
                    'label'=>'list-box',
                    'icon'=>'plus',
                    'url'=>'Yii::app()->createUrl("url")',
                    'options'=>array(
                        'class'=>'btn btn-small',
                    ),
                ),
            ),
        ),
    ),
));

我只想在这里添加一个下拉列表而不是“添加”按钮。有谁能够帮助我。我对 YII 很陌生

提前致谢

4

1 回答 1

0

试试这个,而不是把下拉列表放在 tbbutton 列中,把它放在列本身中,如图所示

在模型中包含一个函数

public function getDropdown()
{
    $values = array(
        1 => 'value1',
        2 => 'value2',

    );
    return CHtml::dropDownlist('$model',variable,$values, array(
        'class'     => 'values',
        'data-id'   => $this->id,
    ));
}

并在 cgrid 视图中调用该函数为

'columns'=>array(
 'surname',
    'name',
    'middlename',
    'dateOfBirth',
     array(
            'name'  => 'Value',
            'type'  => 'raw',
            'value' => '$data->Dropdown',
        ),
),
于 2013-06-15T05:42:42.840 回答