私は最近Yiiboosterを学んで、これに固執しました.. ajaxでyiiブースターを使用する依存ドロップダウンリストグループがあるため、matkulが選択された後にkelasデータが生成されます。yii のドロップダウン リストを使用すると問題なく動作しますが、Yiibooster フォームを使用して素敵なフォームが必要です。
<?php
echo $form->dropDownListGroup(
$model,
'matkul',
array(
'wrapperHtmlOptions' => array(
'class' => 'col-sm-5',
),
'widgetOptions' => array(
'data' => $matkullist,
'htmlOptions' => array('multiple' => false),
),
'prompt'=>'Select',
array(
'ajax'=> array(
'type'=>'POST', //request type
'url'=>CController::createUrl('Kp/Getkelas'), //url to call.
'update'=>'#'.CHtml::activeId($model,'kelas'), //selector to update
)
)
)
); ?>
<?php echo $form->dropDownListGroup(
$model,
'kelas',
array(
'wrapperHtmlOptions' => array(
'class' => 'col-sm-5',
),
'widgetOptions' => array(
'htmlOptions' => array('multiple' => false),
)
)
);?>
問題は、ドロップダウンリストグループを使用すると ajax が機能しないことです。以下のコードのような通常のドロップダウンリストでテストすると、正常に動作します。英語で申し訳ありません。
echo CHtml::dropDownList('country_id','', array(1=>'USA',2=>'France',3=>'Japan'),
array(
'ajax' => array(
'type'=>'POST', //request type
'url'=>CController::createUrl('Kp/Getkelas'), //url to call.
'update'=>'#city_id', //selector to update
)));
echo CHtml::dropDownList('city_id','', array());