0

私はグリッドを持っています

<?php $this->widget('bootstrap.widgets.TbGridView',array(
    'id'=>'products-grid',
    'htmlOptions'=>array('class'=>'grid-view table-striped',),
    'dataProvider'=>$model->search(),
    'columns'=>$columns,
)); ?>

$モデル->検索()

return new CActiveDataProvider($this, array(
            'criteria' => $criteria,
            'pagination' => array('pageSize' => 50)
        ));

そして、すべての列の長さを制限する必要があります。たとえば、列 1 に値がある場合

"こんにちは世界"

最初の列の構成変数が7の場合、レンダリングする必要があります

「こんにちはW...」

私は行動の問題を解決できると思います、そうですか?私を助けてください!

4

2 に答える 2

1

検索機能をこれに変更してください..最速かどうかはわかりません

public function search(){
$returnarray = array();
$dataset =  new CActiveDataProvider($this, array(
            'criteria' => $criteria,
            'pagination' => array('pageSize' => 50)
        ));
    foreach($dataset as $ds){
        $returnarray['your_table_index'] = (strlen($ds->your_element) > 8) ? substr($ds->your_element,0,7).'...' : $ds->your_element;
    }
   return $returnarray;
}
于 2012-11-27T07:18:53.967 に答える
1

CDataColumn 値オプションが役立ちます

foreach($columns as &$column)
{
    if($column['name'] == 'number')
    {
         $column['value'] = 'strlen($data->number) > 14 ? substr($data->number, 0, 14)."..." : $data->number';
    }
}
于 2012-11-27T08:05:04.297 に答える