如何在Yii中的Cgridview列中嵌入进度条

时间:2013-06-07 03:09:39

标签: php yii progress-bar cgridview

如标题所示,我使用以下语法在CGridView列中嵌入CJuiProgressBar:

array (
  'name'=>'cantidad_mails',
  'value'=>'$this->grid->Controller->createWidget("zii.widgets.jui.CJuiProgressBar",array(

    "value"=>intval($data->porcentaje),
    "htmlOptions"=>array(
      "style"=>"width:80px; height:20px; float:left; background-color:#44F44F ;background:#EFFDFF",
      "color" => "red"
    ),
  ))->run()',
),

第一次加载网格页面时它工作正常,但是如果我点击网格的一个分页链接,进度条会从列中消失。

任何人都知道如何解决这个问题? 谢谢。

1 个答案:

答案 0 :(得分:2)

问题是网格分页是通过ajax进行的,所以在ajax更新后,进度条没有重新初始化。

最简单的解决方案是禁用ajax更新,无论如何not efficient

您可以将网格配置的ajaxUpdate设置为false

选项#2是通过配置网格的afterAjaxUpdate选项重新启动进度条。 Here are docs regarding afterAjaxUpdate