文档章节

Thinkphp实现省市区三级联动

zhiqiangw
 zhiqiangw
发布于 2016/11/14 13:38
字数 241
阅读 285
收藏 0

[PHP]代码  

public function index(){
    $province = M('Tree')->where ( array('pid'=>1) )->select ();
    $this->assign('province',$province);
    $this->display();
 
}
public function getRegion(){
    $Region=M("Tree");
    $map['pid']=$_REQUEST["pid"];
    $map['type']=$_REQUEST["type"];
    $list=$Region->where($map)->select();
    echo json_encode($list);
}

[HTML]代码

<select name="province" id="province" onchange="loadRegion('province',2,'city','{:U('Index/getRegion')}');">
   <option value="0" selected>省份/直辖市</option><volist name="province" id="vo"> 
   <option value="{$vo.id}" >{$vo.name}</option></volist>
</select>          
<select name="city" id="city"  onchange="loadRegion('city',3,'town','{:U('Index/getRegion')}');">
  <option value="0">市/县</option>
</select>
<select name="town" id="town">
  <option value="0">镇/区</option>
</select>

[JavaScript]代码

function loadRegion(sel,type_id,selName,url){
    jQuery("#"+selName+" option").each(function(){
        jQuery(this).remove();
    });
    jQuery("<option value=0>请选择</option>").appendTo(jQuery("#"+selName));
    if(jQuery("#"+sel).val()==0){
        return;
    }
    jQuery.getJSON(url,{pid:jQuery("#"+sel).val(),type:type_id},
        function(data){
            if(data){
                jQuery.each(data,function(idx,item){
                    jQuery("<option value="+item.id+">"+item.name+"</option>").appendTo(jQuery("#"+selName));
                });
            }else{
                jQuery("<option value='0'>请选择</option>").appendTo(jQuery("#"+selName));
            }
        }
    );
}
</script>

[SQL]代码

DROP TABLE IF EXISTS `tp_tree`;
CREATE TABLE `tp_tree` (
  `id` int(5) unsigned NOT NULL AUTO_INCREMENT,
  `pid` int(5) unsigned NOT NULL DEFAULT '0',
  `name` varchar(120) DEFAULT NULL,
  `type` tinyint(1) DEFAULT '2',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=3410 DEFAULT CHARSET=utf8;

 

© 著作权归作者所有

zhiqiangw
粉丝 12
博文 193
码字总数 142771
作品 0
郑州
程序员
私信 提问
众邦科技/CRMEB微信小程序商城

CRMEB客户管理+电商管理系统 本项目还在不断开发完善中,如有建议或问题请在这里提出 如果对您有帮助,您可以点右上角 "Star" 支持一下 谢谢! 帮助文档 公众号和小程序打通版 https://gitee....

众邦科技
01/11
0
0
Thinkphp 3.1.2 视频教程震撼上线

期待已久的TP视频教程,经千呼、历万唤,经由TP团队和Lamp兄弟连联合精心制作,正式隆重登场了,这里有最专业的导师,这里有最权威的TP知识,这里有最强大的TP技术团队,在这里,就让我们通过...

麦当苗儿
2013/04/25
4.9K
30
七年相伴,奉献传承 ThinkPHP七周年

从2006年第一个雏形版本发布至今,ThinkPHP七年以来一直致力于为敏捷web应用开发和简化企业应用开发提供免费开源框架,并在7年的时间内不断优化创新,一路秉承简洁实用的原则,更方便更稳定地...

流年
2013/01/15
4.3K
26
ThinkPHP3.0新特性: 快捷查询

新版增加了快捷查询方式,可以进一步简化查询条件的写法,例如: 一、实现不同字段相同的查询条件 $User = M("User"); // 实例化User对象 $map['name|title'] = 'thinkphp'; // 把查询条件传......

岭南六少
2012/02/27
436
0
thinkphp使用Ueditor编辑器写入数据库单双引号转义问题

http://www.poluoluo.com/jzxy/201208/172927.html thinkphp使用Ueditor编辑器写入数据库单双引号转义问题 Posted by 萧猫on 十二月 18, 2013 开发备忘/语录 在ThinkPHP中提交表单插入数据的...

KavenSu
2014/06/27
2K
0

没有更多内容

加载失败,请刷新页面

加载更多

JS基础-该如何理解原型、原型链?

JS的原型、原型链一直是比较难理解的内容,不少初学者甚至有一定经验的老鸟都不一定能完全说清楚,更多的"很可能"是一知半解,而这部分内容又是JS的核心内容,想要技术进阶的话肯定不能对这个...

OBKoro1
今天
6
0
高防CDN的出现是为了解决网站的哪些问题?

高防CDN是为了更好的服务网络而出现的,是通过高防DNS来实现的。高防CDN是通过智能化的系统判断来路,再反馈给用户,可以减轻用户使用过程的复杂程度。通过智能DNS解析,能让网站访问者连接到...

云漫网络Ruan
今天
14
0
OSChina 周一乱弹 —— 熟悉的味道,难道这就是恋爱的感觉

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @xiaoshiyue :好久没分享歌了分享张碧晨的单曲《今后我与自己流浪》 《今后我与自己流浪》- 张碧晨 手机党少年们想听歌,请使劲儿戳(这里)...

小小编辑
今天
2.9K
24
SpringBoot中 集成 redisTemplate 对 Redis 的操作(二)

SpringBoot中 集成 redisTemplate 对 Redis 的操作(二) List 类型的操作 1、 向列表左侧添加数据 Long leftPush = redisTemplate.opsForList().leftPush("name", name); 2、 向列表右......

TcWong
今天
46
0
排序––快速排序(二)

根据排序––快速排序(一)的描述,现准备写一个快速排序的主体框架: 1、首先需要设置一个枢轴元素即setPivot(int i); 2、然后需要与枢轴元素进行比较即int comparePivot(int j); 3、最后...

FAT_mt
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部