Hola
Soy bastante nuevo en Yii y no he podido dar con la solución a pesar de que he buscado bastante información sobre el tema.
El caso es que tengo un dropdown que debe actualizar 3 textfield al seleccionar un dato; ejecuta la acción perfectamente, pero no me actualiza la forma. Aún no veo cual es el error
en mi vista:
<div class="row">
<?php echo $form->labelEx($model,'idtercero'); ?>
<?php $htmlOptions = array(
'empty'=>'-- Seleccione la persona --',
'style'=>'width: 500px;',
'ajax' => array(
'type'=>'POST',
'dataType'=>'json',
'url'=>$this->createUrl('tercerosLookup'),
//'data'=>array('idtercero'=>'js:$(\'#Documentos_idtercero\').val()'),
'success'=>'js:function(data)
{
$("#Documentos_xpersona").text(data.xtercero);
$("#Documentos_ctpislr").text(data.ctpislr);
$("#Documentos_nporc_ret").text(data.nporc_ret);
}'
)
);
echo $form->dropDownList($model,'idtercero',$model->getListaTerceros(),$htmlOptions); ?>
<?php echo $form->error($model,'idtercero'); ?>
<?php echo $form->textField($model,'xpersona'); ?>
<?php echo $form->textField($model,'ctpislr'); ?>
<?php //echo $form->hiddenField($model,'xpersona'); ?>
<?php //echo $form->hiddenField($model,'ctpislr'); ?>
</div>
en el controlador:
public function actionTercerosLookup()
{
$datater = Terceros::model()->findByPk($_POST['Documentos']['idtercero']);
$arr = array();
$arr[] = array(
'xtercero'=>trim($datater['xtercero']),
'ctpislr'=>$datater['ctpislr'],
'nporc_ret'=>$datater['nporc_iva'],
);
echo CJSON::encode($arr);
/*if (Yii::app()->request->isAjaxRequest)
{
$id = Yii::app()->request->getParam('idtercero');
$data = Terceros::model()->findByPk($id);
$arr = array();
$arr[] = array(
'xtercero'=>trim($data['xtercero']),
'ctpislr'=>$data['ctpislr'],
'nporc_ret'=>$data['nporc_iva'],
);
echo CJSON::encode($arr);
}*/
}