Maison > php教程 > PHP开发 > Méthode Yii2 pour implémenter la fonction de liste déroulante de liaison haut-bas

Méthode Yii2 pour implémenter la fonction de liste déroulante de liaison haut-bas

高洛峰
Libérer: 2016-12-23 16:50:09
original
1375 Les gens l'ont consulté

L'exemple de cet article décrit comment Yii2 implémente la fonction de liste déroulante de liaison haut et bas. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Tout d'abord, laissez-moi vous expliquer ce qu'est une liste déroulante de liens descendants

S'il y a deux sélections dans une vue, le premier est le nom de l'entreprise, le second est le nom de la succursale. Il existe plusieurs entreprises, et chaque entreprise a plusieurs succursales. Ce que nous obtenons, c'est qu'après avoir cliqué sur l'entreprise actuelle, les succursales affichées dans les succursales sont les succursales de l'entreprise actuelle.

Ou vous pouvez directement comprendre qu'après avoir sélectionné la province, la sélection suivante montre les comtés de la province actuelle.

Principe :

Après avoir cliqué sur la première sélection, exécutez ajax pour obtenir la branche de l'entreprise actuelle, et utilisez jQuery pour modifier le contenu de la branche

Code de vue partielle des deux sélections Comme suit :

<?= $form->field($model, &#39;companies_company_id&#39;)->dropDownList(
  \yii\helpers\ArrayHelper::map(\backend\models\Companies::find()->all(),&#39;company_id&#39;,&#39;company_name&#39;),
  [
    &#39;prompt&#39;=>&#39;select Company&#39;,
    &#39;onchange&#39;=>&#39;
      $.post("index.php?r=branches/lists&id=&#39;.&#39;"+$(this).val(),function(data){
        $("select#departments-branches_branch_id").html(data);
      });&#39;,
  ]
) ?>
<?= $form->field($model, &#39;branches_branch_id&#39;)->dropDownList(
  \yii\helpers\ArrayHelper::map(\backend\models\Branches::find()->all(),&#39;branch_id&#39;,&#39;branch_name&#39;),
  [
    &#39;prompt&#39;=>&#39;Select Branches&#39;,
  ]
) ?>
Copier après la connexion

code de la méthode de liste :

public function actionLists($id)
{
  $countBranches = Branches::find()
    ->where([&#39;companies_company_id&#39; => $id])
    ->count();
  $branches = Branches::find()
    ->where([&#39;companies_company_id&#39; => $id])
    ->all();
  if ($countBranches > 0) {
    foreach ($branches as $branche) {
      echo "<option value=&#39;" . $branche->branch_id . "&#39;>" . $branche->branch_name . "</option>";
    }
  } else {
    echo "<option>-</option>";
  }
}
Copier après la connexion

J'espère que cet article ci-dessus sera utile pour la conception de programmes PHP basés sur le framework Yii.

Pour plus d'articles sur la façon dont Yii2 implémente la fonction de liste déroulante de liaison haut et bas, veuillez faire attention au site Web PHP chinois !

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal