Buenas, soy nuevo en yii, he estado haciendo dos dropdownlist dependientes guiándome de un tutorial que he encontrado por aquí. Ahora esto intentado sacar el id seleccionado del segundo dropdownlist y mandarlo a otra vista para cargar un grid view.Supongo que habrá que hacerlo mediante un botón con javascrip, para poder pasarle la variable id.
Vista con 2 los dos combos:
<div class="row">
<?php
//Label "Games"
echo $form->labelEx($model_games,'Games');
//Inicializo dropDownList con el modelo games
echo $form->dropDownList($model_games,'Id_Game',CHtml::listData(Games::model()->findAll(),'Id_Game','Name'),
array(
'ajax' => array(
'type' => 'POST',
'url' => CController::createUrl('Site/Rellenarmodos'),//llamo a la función Rellenar modos para actualizar el combo Modos.
'update' => '#'.CHtml::activeId($model_modes,'Id_Mode'),
),
'prompt' => 'Seleccione un Juego...' )
);
?>
</div>
<div class="row">
<?php
//Label "Modes"
echo $form->labelEx($model_modes,'Modes');
//Inicializo combobox vacío.
echo $form->dropDownList($model_modes,'Id_Mode',array(),
array('prompt' => 'Seleccione Modo...'));
echo $form->error($model_modes,'Id_Game'); ?>
</div>
Función para rellenar combodependiente en el Controlador:
public actionIndex(){
//Para pasar más de un modelo a una vista ==>
$this->render('index',array('model_games'=>$model_games,'model_modes'=>$model_modes));
}
// Funcion para llenar combobox dependiente Modos
public function actionRellenarmodos()
{
$Id_Game= $_POST['Games']['Id_Game'];
$lista= Modes::model()->findAll('Id_Game='.$Id_Game,array(':Id_Game'=>$Id_Game));
$lista=CHtml::listData($lista,'Id_Mode','Name');
echo CHtml::tag('option',array('value' => ''),'Seleccione Modo...',true);
foreach ($lista as $valor => $nombre){
echo CHtml::tag('option',array('value'=>$valor),CHtml::encode($nombre));
}
Como tendría que hacer el botón para que me pille el Id_Modo y me lo envíe al controlador?