1

私はモデルDangTuyenと機能を持っています

public function statusImageAccept($status) {
        $str = "";

        if($status == 0)
            $str = Yii::app()->request->baseUrl .  '/images/layout/dangTuyen/tick_icon_OK_black.png'.$status;
        else
            $str = Yii::app()->request->baseUrl . '/images/layout/dangTuyen/tick_icon_green.png'.$status;

        $arr = array(
            'label' => 'Accept',
            'imageUrl' => $str,
            'htmlOption' => array('class' => 'imageIcon'),
            'click' => 'function(){}',
        );

        return $arr;
    }

私はグリッドビューを使用します:

Controller::widget('zii.widgets.grid.CGridView', array(

    'id' => 'dang-tuyen-grid',
    'dataProvider' => $model->search(),
    'filter' => $model,
    'columns' => array(
                 'accept' => $model->statusImageAccept('$data->status'),
));

$model->statusImageAccept('$data->status')function で then を使用するstatusImageAccept($status)と、var $status は文字列になります$data->status

使い方は$data

4

1 に答える 1

3

この方法を試してください:

Controller::widget('zii.widgets.grid.CGridView', array(
    'id' => 'dang-tuyen-grid',
    'dataProvider' => $model->search(),
    'filter' => $model,
    'columns' => array(
        array(
            'header' => '',
            'type' => 'raw',
            'value' => function($data) {
                $imageUrl = Yii::app()->request->baseUrl .  '/images/layout/dangTuyen/';
                if (0 == $data->status) {
                    $imageUrl .= 'tick_icon_OK_black.png' . $data->status;
                } else {
                    $imageUrl .= 'tick_icon_green.png' . $data->status;
                }
                return CHtml::link(CHtml::image($imageUrl,'Accept'),$url, array(
                    'click' => 'function(){}',
                    'class' => 'imageIcon',
                ));
            }
        )
    )
);
于 2012-04-23T21:03:10.340 に答える