Newerton,
Começou a clarear(rsrsrs…). Mudei o:
echo $form->dropDownList($model, 'fipe', $codfipe, array('empty'=>'Selecione'),array(
para:
echo $form->dropDownList($model, 'fipe', $codfipe, array(
e chamou o veiculo/list. O parâmetro do "Selecione" estava impedindo. Agora veja o que esta ocorrendo. Ele consulta corretamente no banco o que seleciono pelo dropdown e retorna valor correto, mas não atualiza no campo que preciso.
3256
Agora está da seguinte forma.
_form
<div class="column">
<?php echo $form->labelEx($model,'fipe'); ?>
<?php
$select = Yii::app()->dbfipe->createCommand()
->select('*')
->from('modelo')
->where('1')
->queryAll();
$codfipe = CHtml::listData($select,'id','id');
<?php echo $form->dropDownList($model, 'fipe', $codfipe, array(
'ajax' => array(
'type' => 'POST',
'dataType' => 'json',
'url' => Yii::app()->createUrl('veiculo/list'),
'update'=>'#veiculo_marca',
'data' => array('fipe' => 'js:$(this).val()')
))); ?>
</div>
<div class="column">
<?php echo $form->labelEx($model,'marca'); ?>
<?php echo $form->textField($model,'marca',array('size'=>25,'maxlength'=>25, 'class'=>'span2')); ?>
<?php echo $form->error($model,'marca'); ?>
</div>
<div class="row">
<?php echo $form->labelEx($model,'modelo');?>
<?php echo $form->textField($model,'modelo',array('size'=>25,'maxlength'=>25, 'class'=>'span2')); ?>
<?php echo $form->error($model,'modelo'); ?>
</div>
_Controller
public function actionList()
{
$id = $_POST['fipe'];
$data = Yii::app()->dbfipe->createCommand("SELECT nome FROM modelo WHERE id='$id'")->queryRow(false);
echo CJSON::encode(array('marca'=>$data[0]));
}
Se tiver mais alguma ideia do que possa ser feito agradeço muito. Estou pesquisando em vários lugares e realmente não consegui ainda encontrar a solução.