Yii2基于Ajax自动获取表单数据的方法


Posted in PHP onAugust 10, 2016

本文实例讲述了Yii2基于Ajax自动获取表单数据的方法。分享给大家供大家参考,具体如下:

这里有两张表,表结构如下,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)

这里要通过在customer选择zip_code之后自动在表单中填充这个邮编对应的城市和省份信息

实现方法

首先需要在Locations控制器里面添加一个方法,他可以通过get过来的zip_id获取对应的location信息

public function actionGetCityProvince($zipId)
{
  $location = Locations::findOne($zipId);
  echo Json::encode($location);
}

然后通过JS监听select,当select改变时,使用jQuery的get方法获取对应的信息,并使用jQuery的attr方法设置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);
?>

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
论坛头像随机变换代码
Oct 09 PHP
php5新改动之短标记启用方法
Sep 11 PHP
php将数据库导出成excel的方法
May 07 PHP
php中修改浏览器的User-Agent来伪装你的浏览器和操作系统
Jul 29 PHP
第七章 php自定义函数实现代码
Dec 30 PHP
php防止sql注入示例分析和几种常见攻击正则表达式
Jan 12 PHP
php实现使用正则将文本中的网址转换成链接标签
Dec 03 PHP
php表单提交与$_POST实例分析
Jan 26 PHP
php编程每天必学之表单验证
Mar 01 PHP
PHP的Yii框架中过滤器相关的使用总结
Mar 29 PHP
Laravel 连接(Join)示例
Oct 16 PHP
php中配置文件保存修改操作 如config.php文件的读取修改等操作
May 12 PHP
教你在header中隐藏php的版本信息
Aug 10 #PHP
PHP通过加锁实现并发情况下抢码功能
Aug 10 #PHP
PHP身份证校验码计算方法
Aug 10 #PHP
PHP5.4起内置web服务器使用方法
Aug 09 #PHP
PHP Filter过滤器全面解析
Aug 09 #PHP
学习PHP Cookie处理函数
Aug 09 #PHP
利用PHP命令行模式采集股票趋势信息
Aug 09 #PHP
You might like
有关 PHP 和 MySQL 时区的一点总结
2008/03/26 PHP
解析PHP中empty is_null和isset的测试
2013/06/29 PHP
php分割合并两个字符串的函数实例
2015/06/19 PHP
yii用户注册表单验证实例
2015/12/26 PHP
thinkPHP5项目中实现QQ第三方登录功能
2017/10/20 PHP
Yii redis集合的基本使用教程
2020/06/14 PHP
Ajax::prototype 源码解读
2007/01/22 Javascript
jQuery获取文本节点之 text()/val()/html() 方法区别
2011/03/01 Javascript
JS 去除Array中的null值示例代码
2013/11/20 Javascript
关于img的href和src取变量及赋值的方法
2014/04/28 Javascript
jQuery操作DOM之获取表单控件的值
2015/01/23 Javascript
微信QQ的二维码登录原理js代码解析
2016/06/23 Javascript
基于JS实现checkbox全选功能实例代码
2016/10/31 Javascript
JS中判断null的方法分析
2016/11/21 Javascript
JavaScript中清空数组的方法总结
2016/12/02 Javascript
js实现导航栏中英文切换效果
2017/01/16 Javascript
angular实现form验证实例代码
2017/01/17 Javascript
js获取html页面代码中图片地址的实现代码
2018/03/05 Javascript
微信小程序 高德地图路线规划实现过程详解
2019/08/05 Javascript
如何在JavaScript中正确处理变量
2020/12/25 Javascript
[57:55]EG vs Fnatic 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
从零学python系列之数据处理编程实例(二)
2014/05/22 Python
Python中类的继承代码实例
2014/10/28 Python
在RedHat系Linux上部署Python的Celery框架的教程
2015/04/07 Python
python清除字符串里非字母字符的方法
2015/07/02 Python
浅谈python新手中常见的疑惑及解答
2016/06/14 Python
浅谈python中对于json写入txt文件的编码问题
2018/06/07 Python
更新修改后的Python模块方法
2019/03/03 Python
对python3 sort sorted 函数的应用详解
2019/06/27 Python
python爬虫 爬取58同城上所有城市的租房信息详解
2019/07/30 Python
深入剖析HTML5 内联框架iFrame
2016/05/04 HTML / CSS
你懂得怎么写自荐信吗?
2013/12/27 职场文书
置业顾问岗位职责
2014/03/02 职场文书
经典导游欢迎词
2015/01/26 职场文书
财务人员岗位职责
2015/02/03 职场文书
中国现代文学之经典散文三篇
2019/09/18 职场文书