[RESUELTO]Dropdown con ajax

Hola a todos de nuevo!, tengo una nueva duda la cual necesito solucionar lo antes posible, tengo un dropdown que al cambiar hace un request al controlador para cargar un textarea, hasta ahí perfecto, el problema esque necesito que aparte del valor que se recoge en el textarea recoger otro valor el cual utilizaré para ‘checkear’ un radiobuton entre 3, espero me podais ayudar, aquí os dejo el código por si es necesario, un saludo s0mk3

Codigo del dropdown:




<div class="row">

        <?php

			$db = Yii::app()->db;

			if($db)

			{

				$query = 'SELECT \'\' as id_cat, \'SELECCIONA UNA CATEGORIA\' as nom UNION SELECT concat(\''.$id.'-\',cc.id_cat) as id_cat, cp.nom FROM cat_curr cc INNER JOIN categories_profesionals cp ON cc.id_cat = cp.id WHERE cc.id_curr = '.$id;

				$result = $db->createCommand($query)->query();

			}

			

			$data = CHtml::listData($result,'id_cat','nom');

			   

		echo CHtml::label('Curriculum:','curriculum'); 

		echo CHtml::dropDownList('curriculum','', $data,

        array(

        'ajax' => array(

        'type'=>'POST',

        'url'=>CController::createUrl('Dactualizar'), 

        'update'=>'#comentari', 

        )));

        ?>        

    </div>



codigo del controlador:




public function actionDactualizar()

	{

		$ids = explode("-", $_POST['curriculum']);

		////////////////////////////

		//$ids[0] --> id curriculum/

		//$ids[1] --> id categoria//

		////////////////////////////		

		$db = Yii::app()->db;

		if($db)

		{

			$query = 'SELECT comentari FROM cat_curr WHERE id_curr = '.$ids[0].' AND id_cat = '.$ids[1];

			$result = $db->createCommand($query)->queryScalar();

		}

		if(!empty($result))

			echo $result;	

	}



Una idea podria ser retornar un CJSON::encode($resultado) donde $resultado es un arreglo que sera parseado como objeto json




$resultado = array(

  'textarea'=>$result,

  'check'=>'radioButton_1',

);

echo CJSON::encode($resultado);

Yii::app()->end();

aunque tendrias que manipular la respuesta desde el lado del cliente utilizando javascript… entonces agregarias algo como el codigo siguiente a tu dropDownList en las propiedades del ajax


success=>'function(data){

  $("#textarea").html(data.textarea);

  $("#contenedorCheck").find(data.check).attr('checked', true);

}',

o algo asi, es solo la idea… no se si funcione… el codigo esta escrito a como me vino a la mente…

Gracias por tu respuesta, pero me temo que mis conocimientos sobre yii no llegan a tanto como para saber aplicar esto. Un saludo

EDITO: He probado hacer lo que me has dicho, todo bien excepto que lado cliente (javascript) no me muestra nada, he hecho exactamente lo que me has dicho, llega en el post al cambiar el estado del dropdown un resultado con lo que debe ser, pero no me rellena el text area ni me selecciona el radiobutton, la consola de errores de javascript no me muestra ningun error…