Fala galera, to precisando de ajuda. Tenho um form onde carrego dinamicamente as opções de um dropDownList, mas também gostaria de carregar dinamicamente ao mesmo tempo o valor de um textfield contendo o valor de compra desta peça. Segue meu fonte:
//MINHA VIEW
if($model->isNewRecord) {
?> <div class="row" style="float:left; margin-right: 50px;">
<?php echo CHtml::dropDownList('peca','',$arrPecas,
array(
'ajax' => array(
'type'=>'POST', //request type
'url'=>CController::createUrl('compras/dynamicfornecedores'), //url to call.
//Style: CController::createUrl('currentController/methodToCall')
'update'=>'#fornecedor', //selector to update
//'data'=>'js:javascript statement'
//leave out the data key to pass all form values through
)
)
);
?>
<span style="color:red;"><?php echo $form->error($model,'peca'); ?></span>
</div><div class="row" style="float:left; margin-right: 62px;"> <?php
//empty since it will be filled by the other dropdown
echo CHtml::dropDownList('fornecedor','', array(0=>'>>Selecione o fornecedor'));
?>
<span style="color:red;"><?php echo $form->error($model,'fornecedor'); ?></span>
</div> <?php
<div class="row">
<?php echo $form->labelEx($model,'valor_compra'); ?>
<?php echo $form->textField($model,'valor_compra',array('size'=>10,'maxlength'=>10)); ?>
<span style="color:red;"><?php echo $form->error($model,'valor_compra'); ?></span>
</div>
}
//CONTROLLER
public function actionDynamicfornecedores()
{
$data = array();
$modelPF = new PecaFornecedor('search');
$pecas_atribuidas = $modelPF->findAllByAttributes(array('peca'=>$_POST['peca']));
foreach($pecas_atribuidas as $peca_atribuida) {
$data[] = Fornecedores::model()->findByPk($peca_atribuida->fornecedor);
}
$data = CHtml::listData($data,'id','nome_fantasia');
echo CHtml::tag('option', array('value'=>null),CHtml::encode(''),true);
foreach($data as $value=>$name)
{
echo CHtml::tag('option',array('value'=>$value),CHtml::encode($name),true);
}
}