【问题标题】:How to make dependent dropdown using select2 widget yii如何使用 select2 小部件 yii 制作依赖下拉列表
【发布时间】:2016-01-26 16:58:24
【问题描述】:

我想使用 select2 创建一个依赖下拉列表,但我无法更改下一个 dropdown($kabupaten) 的数据,这是我的代码:

<?php $this->widget('ext.select2.ESelect2', array(
'model' => $model,
'attribute' => 'provinsi',
'data' => $provinsi,
'htmlOptions' => array(
    'style' => 'width:440px',
    'prompt' => '-- Pilih Provinsi --',
    'ajax' => array(
        'type' => 'POST',
        'url' => CController::createUrl('Kabupaten/SelectKabupaten'),
        'class' => 'span5',
        'update' => '#' . CHtml::activeId($model, 'kabupaten'), 
    )),));
$this->widget('ext.select2.ESelect2', array(
  'model' => $model,
  'attribute' => 'kabupaten',
  'data' => $kabupaten,
  'htmlOptions' => array(
    'style' => 'width:440px',
    'prompt' => '-- Pilih Kabupaten --',
),));?>

这是我的控制器:

public function actionSelectKabupaten() {
    $id_kabupaten = $_POST['DataDiriAnak']['provinsi'];
    $kabupaten = CHtml::listData(Kabupaten::model()->findByAttributes(array('IDProvinsi'=>$id_kabupaten)), 'Nama', 'Nama');
}   

我不知道如何将 $kabupaten 的值发送到我最后一个 select2 下拉列表

【问题讨论】:

  • 请使用您尝试过的代码编辑您的问题。
  • 对不起,我已经编辑了我的问题。
  • 您可以在第一个下拉菜单中使用onChange 事件
  • 能否给我代码示例,谢谢之前

标签: ajax yii jquery-select2-3


【解决方案1】:

您可以通过编码CHtml::tag() 中的数据,在您的视图中发送$kabupaten 的值,如下所示:

public function actionSelectKabupaten() {
    $id_kabupaten = $_POST['DataDiriAnak']['provinsi'];
    $kabupaten = CHtml::listData(Kabupaten::model()->findByAttributes(array('IDProvinsi'=>$id_kabupaten)), 'Nama', 'Nama');
        foreach($kabupaten as $value => $name) {
                echo CHtml::tag('option', array('value' => $value), CHtml::encode($name), true);
        }
} 

如果有任何进一步的查询,请告诉我。

【讨论】:

  • 感谢您的解决方案,但仍然无法正常工作。第二个 select2 下拉列表的数据仍然为空
猜你喜欢
  • 1970-01-01
  • 2020-12-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-22
  • 2015-12-12
  • 1970-01-01
  • 2013-12-24
相关资源
最近更新 更多