Yii2實現(xiàn)上下聯(lián)動下拉框功能的方法
本文實例講述了Yii2實現(xiàn)上下聯(lián)動下拉框功能的方法。分享給大家供大家參考,具體如下:
首先我先解釋下什么是上下聯(lián)動的下拉框
假如一個view里面有兩個select,第一個是公司名,第二個是分公司名。公司有多個,每個公司又有多個分公司,我們實現(xiàn)的就是點擊當前公司后,分公司里面顯示的事當前公司的分公司。
或者你直接理解成選擇所屬省份后,下面的select顯示的是當前省份的縣。
原理:
點擊第一個select后,執(zhí)行ajax獲取當前公司的分公司,并使用jQuery修改分公司內(nèi)容
兩個select的部分視圖代碼如下:
<?= $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',
]
) ?>
list方法代碼:
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>";
}
}
更多關(guān)于Yii相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結(jié)》、《php優(yōu)秀開發(fā)框架總結(jié)》、《smarty模板入門基礎(chǔ)教程》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于Yii框架的PHP程序設(shè)計有所幫助。
- Yii2 ActiveRecord多表關(guān)聯(lián)及多表關(guān)聯(lián)搜索的實現(xiàn)
- yii2實現(xiàn)根據(jù)時間搜索的方法
- yii2帶搜索功能的下拉框?qū)嵗斀?/a>
- 淺析Yii2 GridView 日期格式化并實現(xiàn)日期可搜索教程
- 淺析Yii2 GridView實現(xiàn)下拉搜索教程
- yii2框架中使用下拉菜單的自動搜索yii-widget-select2實例分析
- Yii2基于Ajax自動獲取表單數(shù)據(jù)的方法
- Yii2的XSS攻擊防范策略分析
- Yii2中Restful API原理實例分析
- Yii2實現(xiàn)同時搜索多個字段的方法
相關(guān)文章
thinkPHP+phpexcel實現(xiàn)excel報表輸出功能示例
這篇文章主要介紹了thinkPHP+phpexcel實現(xiàn)excel報表輸出功能,結(jié)合具體實例形式分析了thinkPHP整合PHPExcel實現(xiàn)針對Excel文件相關(guān)操作技巧,需要的朋友可以參考下2017-06-06
WordPress中訪客登陸實現(xiàn)郵件提醒的PHP腳本實例分享
這篇文章主要介紹了WordPress中訪客登陸實現(xiàn)郵件提醒的PHP腳本實例分享,類似于社交網(wǎng)站的異地IP登陸提醒,不過IP所在地顯示的實現(xiàn)并沒有在本文介紹范圍中,需要的朋友可以參考下2015-12-12
在Mac OS上搭建PHP的Yii框架及相關(guān)測試環(huán)境
這篇文章主要介紹了在Mac OS上搭建PHP的Yii框架及相關(guān)測試環(huán)境的方法,Mac自帶Apache與PHP等軟件,因而搭建開發(fā)環(huán)境時非常舒適,需要的朋友可以參考下2016-02-02
php批量更改數(shù)據(jù)庫表前綴實現(xiàn)方法
我們經(jīng)常會遇到替換或添加數(shù)據(jù)庫表前綴的問題,通過數(shù)據(jù)庫導(dǎo)出,在記事本上批量更改,然后再導(dǎo)出,這也是一種方法,但是不夠方便2013-10-10
php使用get和post傳遞數(shù)據(jù)出現(xiàn)414?Request-URI?Too?Large的原因分析及解決方案
Request-URI Too Large(請求URI過長)是一個HTTP錯誤狀態(tài)碼,表示所發(fā)送的HTTP請求中的URI(統(tǒng)一資源標識符)長度超過了服務(wù)器能夠處理的限制,這篇文章主要介紹了php使用get和post傳遞數(shù)據(jù)出現(xiàn)414?Request-URI Too?Large的解決方案,需要的朋友可以參考下2023-08-08
Laravel接收前端ajax傳來的數(shù)據(jù)的實例代碼
本篇文章主要介紹了Laravel接收前端ajax傳來的數(shù)據(jù)的實例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-07-07

