Just a little tip
If you use the forward method to call another controller’s action with $exit=false, you will notice that the registered scripts of clientScript will be rendered for each CController’s render call
to avoid that, do the following
//Controller
//extend forward method 
public function forward($route,$exit=true){
  Yii::app()->params['forwarded']=true;
  parent::forward($route,$exit);
  Yii::app()->params['forwarded']=false;
}
//extend clientScript
class myClientScript extends CClientScript{
 public function render(&$output){
  if(Yii::app()->params['forwarded']===true)
	return;
  return parent::render($output);
 }
}
//config/main.php
//use your just created clientScript
...
'components'=>array(
...
'clientScript'=>array('class'=>'myClientScript'),
),
and you are done
Hope this helps
Gustavo