php语言

thinkPHP实现的省市区三级联动功能

时间:2025-06-06 03:38:26 php语言 我要投稿
  • 相关推荐

thinkPHP实现的省市区三级联动功能

  介绍了thinkPHP实现的省市区三级联动功能,详细分析了thinkPHP实现省市区三级联动功能的详细步骤与相关操作技巧,需要的朋友可以参考下.

  本文实例讲述了thinkPHP实现的省市区三级联动功能。分享给大家供大家参考,具体如下:

  一张表实现省市区三级联动【3409条数据】

  1. php代码:

  12

  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);

  }

  2. HTML代码:

  ?

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  <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>

  3. javascript代码:

  ?

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  11

  12

  13

  14

  15

  16

  17

  18

  19

  20

  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));

  }

  }

  );

  }

  4. SQL代码:

  ?

  1

  2

  3

  4

  5

  6

  7

  8

  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;

  5. TP_tree.sql文件点击此处本站下载。

  更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

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

 

【thinkPHP实现的省市区三级联动功能】相关文章:

thinkPHP实现的联动菜单功能03-04

ThinkPHP实现支付宝接口功能实例04-13

Thinkphp 多语言功能完善04-13

Thinkphp的多语言功能完善05-05

php实现图片缩放功能类02-04

利用python实现简单爬虫功能04-20

php中实现回删功能实例01-26

php实现文件上传及头像预览功能05-25

php中怎么实现回删功能04-21