时时商务社区

标题: thinkPHP实现的省市区三级联动功能示例 [打印本页]

作者: 福多多fluke    时间: 2018-2-14 05:26

            本文实例讲述了thinkPHP实现的省市区三级联动功能。分享给大家供大家参考,具体如下:
一张表实现省市区三级联动【3409条数据】
1. 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);
}
2. HTML代码:
  省份/直辖市
  {$vo.name}
市/县
镇/区
3. javascript代码:
function loadRegion(sel,type_id,selName,url){
  jQuery("#"+selName+" option").each(function(){
    jQuery(this).remove();
  });
  jQuery("请选择").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(""+item.name+"").appendTo(jQuery("#"+selName));
        });
      }else{
        jQuery("请选择").appendTo(jQuery("#"+selName));
      }
    }
  );
}
4. 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;
5. TP_tree.sql文件点击此处本站下载
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
            
            
您可能感兴趣的文章:
  • php 三级联动菜单
  • PHP+Mysql+Ajax+JS实现省市区三级联动
  • Ajax+php实现商品分类三级联动
  • PHP 年月日的三级联动实例代码
            




    欢迎光临 时时商务社区 (http://bbs.4435.cn/) Powered by Discuz! X3.2