Yii2實(shí)現(xiàn)中國省市區(qū)三級聯(lián)動(dòng)實(shí)例
1、獲取源碼:yii2-region_jb51.rar
2、安裝
添加到你的composer.json文件
"chenkby/yii2-region": "dev-master"
切換到項(xiàng)目目錄
composer update;
3、配置
1) 在地區(qū)的Model中添加以下方法
public static function getRegion($parentId=0)
{
$result = static::find()->where(['parent_id'=>$parentId])->asArray()->all();
return ArrayHelper::map($result, 'id', 'name');
}
2) 在controller中添加以下action
public function actions()
{
$actions=parent::actions();
$actions['get-region']=[
'class'=>\chenkby\region\RegionAction::className(),
'model'=>\app\models\Region::className()
];
return $actions;
}
3) 在common/config里的main.php中添加 urlManager的enablePrettyUrl的,即隱藏index.php
"urlManager" => [
//用于表明urlManager是否啟用URL美化功能,在Yii1.1中稱為path格式URL,
// Yii2.0中改稱美化。
// 默認(rèn)不啟用。但實(shí)際使用中,特別是產(chǎn)品環(huán)境,一般都會啟用。
"enablePrettyUrl" => true,
// 是否啟用嚴(yán)格解析,如啟用嚴(yán)格解析,要求當(dāng)前請求應(yīng)至少匹配1個(gè)路由規(guī)則,
// 否則認(rèn)為是無效路由。
// 這個(gè)選項(xiàng)僅在 enablePrettyUrl 啟用后才有效。
"enableStrictParsing" => false,
// 是否在URL中顯示入口腳本。是對美化功能的進(jìn)一步補(bǔ)充。
"showScriptName" => false,
// 指定續(xù)接在URL后面的一個(gè)后綴,如 .html 之類的。僅在 enablePrettyUrl 啟用時(shí)有效。
"suffix" => "",
"rules" => [
"<controller:\w+>/<id:\d+>"=>"<controller>/view",
"<controller:\w+>/<action:\w+>"=>"<controller>/<action>"
],
],
4、使用
<?= $form->field($model, 'district')->widget(\chenkby\region\Region::className(),[
'model'=>$model,
'url'=> \yii\helpers\Url::toRoute(['get-region']),
'province'=>[
'attribute'=>'province',
'items'=>Region::getRegion(),
'options'=>['class'=>'form-control form-control-inline','prompt'=>'選擇省份']
],
'city'=>[
'attribute'=>'city',
'items'=>Region::getRegion($model['province']),
'options'=>['class'=>'form-control form-control-inline','prompt'=>'選擇城市']
],
'district'=>[
'attribute'=>'district',
'items'=>Region::getRegion($model['city']),
'options'=>['class'=>'form-control form-control-inline','prompt'=>'選擇縣/區(qū)']
]
]);
?>
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Zend Framework入門教程之Zend_Registry組件用法詳解
這篇文章主要介紹了Zend Framework入門教程之Zend_Registry組件用法,結(jié)合實(shí)例形式分析了Zend_Registry組件實(shí)現(xiàn)對象注冊的設(shè)置、獲取、判斷、刪除等操作常用技巧,需要的朋友可以參考下2016-12-12
PHP實(shí)現(xiàn)Session入庫/存入redis的方法
本篇文章主要介紹了PHP實(shí)現(xiàn)Session入庫/存入redis的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-05-05
PHP實(shí)現(xiàn)微信紅包金額拆分試玩的算法示例
本篇文章主要介紹了PHP實(shí)現(xiàn)微信紅包金額拆分試玩的算法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-04-04
laravel admin實(shí)現(xiàn)分類樹/模型樹的示例代碼
這篇文章主要介紹了laravel admin實(shí)現(xiàn)分類樹/模型樹,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06

