[Solucionado] Duda Generando Un Action Desde Dropdownlist

Hola a todos, tengo una duda de como enviar correctamente los datos de un dropDownList y renderizar la vista. Tengo lo siguiente:




[size=2]<?php $form=$this->beginWidget('CActiveForm'); ?>[/size]

	<div class="row">

			

		<?php echo $form->dropDownList($modelform,'Id_Movil',CHtml::listData(GpsReports::model()->findAll(), 'Id_Movil','Id_Movil'),

					array(	

						//	'onchange'=>'js:alert($(this).val())',

						'empty'=>'Seleccione su vehiculo ',

						'options'=>array('selected'=>'selected'),

						'ajax'=>array(					

											

											'type'=>'GET',

                                            'url' => Yii::app()->createUrl('Maps/updatemap/'),

                                            'data'=>"js:{Id_Movil: $(this).val()}",

                        ),					

					)

		); 

		?>



Con este pequeño codigo, logro llamar a la accion updatemap correctamente, pasandole en la variable $_GET["Id_Movil"] el id seleccionado del dropdownlist. En esta acción, renderiza la vista "ultima":


$this->render('ultima', array('gMap'=>$gMap,'model'=>$ultimoregistro,'listaid'=>$listaid,'modelform'=>$model)); 

Dentro de la vista última, llamo :





if (isset($gMap)){

	$gMap->renderMap(); 

}

else {echo "No se cargo ninguna posicion";}




El tema es que no me cambia la url, renderizando la selección. Pero si veo en la consola de chrome, el link me lo genera correctamente:

4337

req.JPG

Si abro manualmente el link

http://localhost/Pro…_=1369859136046

me carga y renderiza correctamente los datos que necesito. No estoy entendiendo que me falta para abrirlo correctamente

De antemano, les agradezco cualquier ayuda.

Gracias

Mauro

Hola Mauro,

Creo que el problema está en que no se está indicando qué hacer con el resultado obtenido…

Para ello se puede usar "update" o "replace" en la sección "ajax"… algo así:




<?php

echo $form->dropDownList($modelform,'Id_Movil',CHtml::listData(GpsReports::model()->findAll(), 'Id_Movil','Id_Movil'),

	array(

        	//  	'onchange'=>'js:alert($(this).val())',

        	'empty'=>'Seleccione su vehiculo ',

        	'options'=>array('selected'=>'selected'),

        	'ajax'=>array(

            	'update'=>'#objXXXX', // Esta es la línea que agregué!!!

            	'type'=>'GET',

            	'url' => Yii::app()->createUrl('Maps/updatemap/'),

            	'data'=>"js:{Id_Movil: $(this).val()}",

        	),

	)

);

?>

<div id="#objXXXX"></div>



Considero que eso resolverá su error.

Saludos.

Hola robregonm, era eso lo que me estaba faltando!! muchas gracias

Excelente… ya puede marcar como solucionado a este hilo :)