如何使用ajax加载checkboxList

时间:2011-12-26 11:27:52

标签: php jquery yii checkboxlist

我有一个下拉列表:city。

现在我正在尝试使用ajax加载选择上述下拉列表的复选框列表。

例如,如果我点击城市xyz,它应该填充一个复选框列表,例如Holiday package 1,2等。

我尝试了一个类似的例子Creating a dependent dropdown,但即使在回复listData之后它也适用于我。

我如何实现这一目标?我是Yii框架的新手,示例代码片段可以提供帮助。

2 个答案:

答案 0 :(得分:1)

您提供的链接显示了您要执行的操作的正确方法。出了什么问题?为什么它不适合你?也许你可以发布你的实现,我们可以找出出了什么问题。

答案 1 :(得分:1)

在您看来:

<?php echo $form->labelEx($model,'az_dropdown_id'); ?>
<?php echo $form->dropDownList($model, 'az_dropdown_id', CHtml::listData(Controller::model()->findAll(), 'id', 'name'), 
        array(
            'ajax' => array(
            'type'=>'POST', //request type
            'url'=>CController::createUrl('role/dynamicaction'), //url to call.
            'update'=>'#checkboxList_id', //selector to update
       ))); ?>
<div id "checkboxList_id'></div>

在您的控制器中

$data=TheModel::model()->findAll('az_dropdown_id=:az_dropdown_id', 
                  array(':az_dropdown_id'=>(int) $_POST['CurrentController']['az_dropdown_id']));

$data=CHtml::listData($data,'id','name');
echo CHtml::checkboxList('idForCheckboxList','',$data);