Yii2基于Ajax自動(dòng)獲取表單數(shù)據(jù)的方法
本文實(shí)例講述了Yii2基于Ajax自動(dòng)獲取表單數(shù)據(jù)的方法。分享給大家供大家參考,具體如下:
這里有兩張表,表結(jié)構(gòu)如下,locations表存放的省份和郵編等信息,兩張表的model和curd均使用gii生成
yii2advanced.customers表
customer_id:int(11)
customer_name:varchar(100)
zip_code:varchar(20)
city:varchar(100)
province:varchar(100)
yii2advanced.locations表
location_id:int(11)
zip_code:varchar(20)
city:varchar(100)
province:varchar(100)
這里要通過(guò)在customer選擇zip_code之后自動(dòng)在表單中填充這個(gè)郵編對(duì)應(yīng)的城市和省份信息
實(shí)現(xiàn)方法
首先需要在Locations控制器里面添加一個(gè)方法,他可以通過(guò)get過(guò)來(lái)的zip_id獲取對(duì)應(yīng)的location信息
public function actionGetCityProvince($zipId)
{
$location = Locations::findOne($zipId);
echo Json::encode($location);
}
然后通過(guò)JS監(jiān)聽(tīng)select,當(dāng)select改變時(shí),使用jQuery的get方法獲取對(duì)應(yīng)的信息,并使用jQuery的attr方法設(shè)置city和province的value即可
JS代碼,位于customer的form視圖
#zipCode 是select的id
<?php
$script = <<<JS
jQuery('#zipCode').change(function(){
var zipId = $(this).val();
jQuery.get('index.php?r=locations/get-city-province',{zipId:zipId},function(data){
var data = jQuery.parseJSON(data);
jQuery("#customers-city").attr("value",data.city);
jQuery("#customers-province").attr("value",data.province);
});
});
JS;
$this->registerJs($script);
?>
更多關(guān)于Yii相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結(jié)》、《php優(yōu)秀開(kāi)發(fā)框架總結(jié)》、《smarty模板入門基礎(chǔ)教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家基于Yii框架的PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
PHP中使用strpos函數(shù)實(shí)現(xiàn)屏蔽敏感關(guān)鍵字功能
這篇文章主要介紹了PHP中使用strpos函數(shù)實(shí)現(xiàn)屏蔽敏感關(guān)鍵字功能,本文用在發(fā)布文章保存到數(shù)據(jù)庫(kù)時(shí)前攔截敏感關(guān)鍵,需要的朋友可以參考下2014-08-08
laravel 操作數(shù)據(jù)庫(kù)常用函數(shù)的返回值方法
今天小編就為大家分享一篇laravel 操作數(shù)據(jù)庫(kù)常用函數(shù)的返回值方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-10-10
php下載文件,添加響應(yīng)頭的簡(jiǎn)單實(shí)例
下面小編就為大家?guī)?lái)一篇php下載文件,添加響應(yīng)頭的簡(jiǎn)單實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-09-09
php redis實(shí)現(xiàn)對(duì)200w用戶的即時(shí)推送
這篇文章主要為大家詳細(xì)介紹了php redis實(shí)現(xiàn)對(duì)200w用戶的即時(shí)推送,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
Zend Framework入門之環(huán)境配置及第一個(gè)Hello World示例(附demo源碼下載)
這篇文章主要介紹了Zend Framework入門之環(huán)境配置及第一個(gè)Hello World示例,詳細(xì)講述了Zend Framework環(huán)境搭建與配置,以及實(shí)現(xiàn)第一個(gè)Hello World程序的方法,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2016-03-03
解決在laravel中auth建立時(shí)候遇到的問(wèn)題
今天小編就為大家分享一篇解決在laravel中auth建立時(shí)候遇到的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-10-10

