我对 Yii 中的 Controller 方法 AJAX 调用有一点问题。问题是我正在尝试根据前一个选定项目的值过滤一个 dropDownList 的数据。
在我发现问题根源的视图文件中,我有这段代码:
<?php echo $form->labelEx($model,'Estado'); ?>
<?php echo $form->dropDownList($model,'estado',CHtml::listData(Estado::model()->findAll(),'id','nombre'),array(
'ajax'=>array(
'type'=>'POST',
'url'=>CController::createAbsoluteUrl('buscar/select'),
'update'=>'#'.CHtml::activeId($model,'tbl_municipio_id'),
),
'class'=>'form-control'
));
?>
<?php echo $form->error($model,'Estado'); ?>
在控制器方面,我得到了这个:
public function actionSelect(){
echo "Hello world";
$data = Municipio::model()->findAll('tbl_estado_id=:tbl_estado_id',
array(':tbl_estado_id'=>(int) $_POST['Consultorio_estado']));
$data = CHtml::listData($data,'id','name');
foreach($data as $value=>$name)
{
echo CHtml::tag('option',
array('value'=>$value),CHtml::encode($name),true);
}
单击 dropDownList 时,不会触发对 Select 方法的 ajax 调用。我使用 Firebug 跟踪了请求,没有错误也没有失败消息被丢弃。
有谁知道我能做什么?
提前致谢。