ajax リクエストの後、コントローラーから 1 つの配列を応答として取得しました。ドロップダウン リストでこの配列値を使用するにはどうすればよいですか?
答え
私の見解では、私は持っています
echo CHtml::dropDownList('client_id', '',CHtml::listData($model,'client_id','client_name'), array(
'ajax'=> array(
'type'=>'POST',
'url'=>Yii::app()->baseUrl.'/index.php?r=page/dynamicDropdownList',
'update'=>'#program_id',
'empty'=>'-Select a Client-')));
// I need to populate the response array in this dropdownlist
echo CHtml::dropDownList('program_id','', CHtml::listData($result,'program_id', 'program_name'));
私のコントローラーで
public function actionDynamicDropdownList()
{
if($_POST['client_id'] > '0') {
$result = Yii::app()->db->createCommand()->select('program_id, program_name')->from('program')->where('client_id='.$_POST['client_id'].'')->order('program_name')->queryAll();
$this->render('admin', array(
'result' => $result,
));
}
}
別の問題
これで、2 番目のドロップダウン リストが 1 番目のドロップダウン リストの値と結果を表示することを除いて、すべてが機能するようになりました。
解決策:-応答を解析し、ドロップダウンリストに表示しました