이 기사의 예에서는 Yii2가 상하 연결 드롭다운 상자 기능을 구현하는 방법을 설명합니다. 참고로 자세한 내용은 다음과 같습니다.
먼저 탑다운 연결 드롭다운 박스가 무엇인지 설명드리겠습니다.
보기에는 두 가지 선택 사항이 있습니다. 첫 번째는 회사 이름입니다. 여러 회사가 있고 각 회사에는 여러 지점이 있습니다. 현재 회사를 클릭하면 지점에 표시되는 지점이 현재 회사의 지점이라는 것입니다.
혹은 도를 선택하고 나면 다음과 같이 선택하면 현재 도의 군이 표시되는 것을 직접적으로 알 수 있습니다.
원리:
첫 번째 선택 클릭 후 ajax를 실행하여 현재 회사의 지점을 가져오고 jQuery를 사용하여 지점의 내용을 수정합니다.
부분 보기 코드 둘 중 선택 다음과 같이:
<?= $form->field($model, 'companies_company_id')->dropDownList( \yii\helpers\ArrayHelper::map(\backend\models\Companies::find()->all(),'company_id','company_name'), [ 'prompt'=>'select Company', 'onchange'=>' $.post("index.php?r=branches/lists&id='.'"+$(this).val(),function(data){ $("select#departments-branches_branch_id").html(data); });', ] ) ?> <?= $form->field($model, 'branches_branch_id')->dropDownList( \yii\helpers\ArrayHelper::map(\backend\models\Branches::find()->all(),'branch_id','branch_name'), [ 'prompt'=>'Select Branches', ] ) ?>
목록 메소드 코드:
public function actionLists($id) { $countBranches = Branches::find() ->where(['companies_company_id' => $id]) ->count(); $branches = Branches::find() ->where(['companies_company_id' => $id]) ->all(); if ($countBranches > 0) { foreach ($branches as $branche) { echo "<option value='" . $branche->branch_id . "'>" . $branche->branch_name . "</option>"; } } else { echo "<option>-</option>"; } }
위의 글이 Yii 프레임워크를 기반으로 하는 모든 분들의 PHP 프로그램 설계에 도움이 되기를 바랍니다.
Yii2가 상하 연결 드롭다운 박스 기능을 구현하는 방법에 대한 더 많은 관련 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!