省市区三级联动插件使用

Distpicker插件下载地址
它的文档中有丰富的示例,这里以 Yii 高级版框架为背景,介绍插件简单使用。

1. 下载插件

下载插件,把 distpicker.data.js,distpicker.js,main.js 三个文件放入 web/js 目录下。

2. 添加 addScript方法

因为插件是依赖 jQuery 的,所以要保证在 jQuery 加载完成后,再加载 Distpicker。
在 backend\assets\AppAsset 中添加 addScript() 方法

    /**
     * 定义按需加载 JS 方法,注意加载顺序在最后
     * @param \yii\web\View $view
     * @param $jsfile
     */
    public static function addScript($view, $jsfile)
    {
        $view->registerJsFile($jsfile,['depends' => 'backend\assets\AppAsset']);
    }
3. 引入 Distpicker

在页面中引入插件,注意文件路径。

<?php
AppAsset::register($this);
AppAsset::addScript($this,'@web/js/dist/distpicker.data.js');
AppAsset::addScript($this,'@web/js/dist/distpicker.js');
AppAsset::addScript($this,'@web/js/dist/main.js');
?>
4. 使用插件

在页面中加入,即可看出效果。

<div data-toggle="distpicker">
        <select data-province="浙江省"></select>
        <select data-city="杭州市"></select>
        <select data-district="西湖区"></select>
</div>

我们可以通过设置 data-province 等属性来设置控件的初始值,在数据反显时用得到。

默认样式不好看,我这里引入 bootstrap.css

<div class="form-group">
    <div class="form-inline">
        <label class="control-label" for="employee-born">出生地</label>
        <div id="distpicker4">
            <div class="form-group">
                <label class="sr-only" for="province4">Province</label>
                <select class="form-control" name="Employee[province]" id="province4"></select>
            </div>
            <div class="form-group">
                <label class="sr-only" for="city4">City</label>
                <select class="form-control" name="Employee[city]" id="city4"></select>
            </div>
            <div class="form-group">
                <label class="sr-only" for="district4">District</label>
                <select class="form-control" name="Employee[district]" id="district4"></select>
            </div>
        </div>
    </div>
</div>

我这里设置 selectname 属性是为了用模型的块赋值。

这个插件有个问题,比如香港特别行政区,data-district 不存在。台湾地区没有市和区。有需要的朋友需要注意了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值