<div>
<?php echo $form->labelEx($model,'fk_cidades'); ?>
<?php echo $form->dropDownList($model, 'fk_cidades',
CHtml::listData(Cidades::model()->findAll(),'id','nome'),
array(
'ajax'=>array(
'type'=>'POST',
'url'=> CController::createUrl('PressaoPonta/selectBairro'),
'update'=> '#'.CHtml::activeId($model,'fk_bairro'),
)
)
); ?>
<?php echo $form->error($model,'fk_cidades'); ?>
</div>
<div>
<?php echo $form->labelEx($model,'fk_bairro'); ?>
<?php echo $form->dropDownList($model, 'fk_bairro',array()); ?>
<?php echo $form->error($model,'fk_bairro'); ?>
</div>
agora no controller
public function actionselectBairro(){
$id_cidade = $_POST['PressaoPonta']['fk_cidades'];
$lista = Bairros::model()->findAll('id_cidades = :id', array(':id'=>$id_cidade));
$lista = CHtml::ListData($lista,'id','nome');//param id e nome da tabela bairros
foreach ($lista as $valor => $nome){
echo CHtml::tag('options', array('value'=>$valor),CHtml::encode($nome),true);
}
}
no firebug a resposta desta função e exatamente o que busco, os bairros referente a cidade selecionada no primeiro bairro,
<options value="3">Tamareiras</options><options value="4">Cuia</options><options value="6">Paiol Grande
</options><options value="7">Vila Americana</options><options value="8">Incepa</options><options value
="9">Palmeirinha</options><options value="10">Zona Baixa Centro</options><options value="11">Parque exposi
ção</options><options value="12">13 de maio</options><options value="13">Usina Velha</options><options
value="14">Vila Amaral</options><options value="15">Cohapar</options>
porém não consigo achar a resposta do porque não popula o segundo dropdownlist para poder dar continuidade na tabela dependete desse drop, se alguem tiver alguma sugestão do que alterar ou implementar ou ate mesmo corrigir serei grato.