YII实现dropDownList 联动事件

* 因功能需求,需要用到联动,特此记录分享*

一、视图中

<div class="main-form">

    <?php $form = ActiveForm::begin(); ?>


    <?= $form->field($model, 'cid')->dropDownList(
        \common\models\service\common\Category::getCateOptions(),
        [
            'prompt' => '请选择单位',
            'onchange'=>'
                $.post("/carousel/main/cate?id='.'"+$(this).val(),function(data){
                    $("select#main-aid").html(data);
                });',
        ]
    )->hint('父级,必选') ?>
    <?= $form->field($model, 'aid')->dropDownList( \common\models\service\common\Category::getCateOptions(), ['prompt' => '请选择子级']) ?>
    <div class="form-group">
        <?= Html::submitButton('Save', ['class' => 'btn btn-success']) ?>
    </div>

    <?php ActiveForm::end(); ?>

</div>

二、控制器

ublic function actionCate($id)
{
    $departments = Category::find()
        ->where(['parent_id' => $id])
        ->asArray()
        ->all();

    if(!$departments){
        echo "<option value='" . 0 . "'>"  . "</option>";
    }
    foreach ($departments as $department) {
        echo "<option value='" . $department['id'] . "'>" . $department['name'] . "</option>";
    }
}

三、实现效果

* 因功能需求,需要用到联动,特此记录分享*

一、视图中

<div class="main-form">

    <?php $form = ActiveForm::begin(); ?>


    <?= $form->field($model, 'cid')->dropDownList(
        \common\models\service\common\Category::getCateOptions(),
        [
            'prompt' => '请选择单位',
            'onchange'=>'
                $.post("/carousel/main/cate?id='.'"+$(this).val(),function(data){
                    $("select#main-aid").html(data);
                });',
        ]
    )->hint('父级,必选') ?>
    <?= $form->field($model, 'aid')->dropDownList( \common\models\service\common\Category::getCateOptions(), ['prompt' => '请选择子级']) ?>
    <div class="form-group">
        <?= Html::submitButton('Save', ['class' => 'btn btn-success']) ?>
    </div>

    <?php ActiveForm::end(); ?>

</div>

二、控制器

ublic function actionCate($id)
{
    $departments = Category::find()
        ->where(['parent_id' => $id])
        ->asArray()
        ->all();

    if(!$departments){
        echo "<option value='" . 0 . "'>"  . "</option>";
    }
    foreach ($departments as $department) {
        echo "<option value='" . $department['id'] . "'>" . $department['name'] . "</option>";
    }
}

三、实现效果

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值