我创建了DropDownList,我正在尝试用内容填充div,我知道该怎么做。但问题是我的下拉列表不会POST值。
这是来自view \ index.php的代码
<?php
echo CHtml::dropDownList('parovi', '', $model->dropDownListParovi(), array
(
'class'=>'dropDownListLegloIzaberiPar',
'empty'=>array('-'=>Yii::t('default', 'PAR_UZGOJNI_DNEVNIK_LEZENJA_IZABERI_PAR')),
'ajax'=>array
(
'type'=>'POST',
'url'=>Yii::app()->createUrl('/paruzgojni/ajaxIzlistajLegla'),
'update'=>'#legla',
),
)
);
?>
<div id="legla"></div>
这是来自控制器
public function actionAjaxIzlistajLegla()
{
echo $_POST['parovi'];
}
此AjaxIzlistaijLegla操作位于accessRules()内。这是有效的当我将echo $_POST['parovi'];
替换为echo "Hello";
时它会起作用,它会更新我的div。但我不知道为什么它不会从下拉列表中发布该值。
jquery包含在头部。
答案 0 :(得分:1)
答案是我应该像这样用
包装我的dropDownList和CActiveForm$this->beginWidget('CActiveForm', array(
'id'=>'par-uzgojni-ispis-legla-form',
));
echo CHtml::dropDownList('parovi', '', $model->dropDownListParovi(), array
(
'class'=>'dropDownListLegloIzaberiPar',
'empty'=>array('-'=>Yii::t('default', 'PAR_UZGOJNI_DNEVNIK_LEZENJA_IZABERI_PAR')),
'ajax'=>array
(
'type'=>'POST',
'url'=>Yii::app()->createUrl('/paruzgojni/ajaxIzlistajLegla'),
'update'=>'#legla',
),
)
);
$this->endWidget();
因为我没有把它包起来,所以它无法将任何数据发送到我的控制器