Yii2 . FORM How to make dependant drop down. Where second drop downs values are dependant on first drop down selection
In form file :
In siteController.php file add a function like below:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <?= $form->field($model, 'country_id')->dropDownList(["5"=>'USA', "6"=>"Pakistan"], ['prompt'=>'Select Country', 'onchange'=>' $.get( "'.\yii\helpers\Url::toRoute('/site/getstates').'", { id: $(this).val() } ) .done(function( data ) { $( "#'.Html::getInputId($model, 'state_id').'" ).html( data ); } ); ','class' => 'form-control' ] ); ?> <?= $form->field($model, 'state_id') ->dropDownList( [ 'prompt'=>'Select State', ] ); ?> | 
In siteController.php file add a function like below:
public function actionGetstates($id){
        $states = StateProvince::find()->where(
            [
                'country_id'=>$id
            ]
        )->all();
        $returnStr = "";
        foreach ($states as $state){
            $returnStr.="<option value='{$state->state_id}'>{$state->name}</option>";
        }
        return $returnStr;
    }