Maison > php教程 > PHP源码 > Thinkphp实现省市区三级联动

Thinkphp实现省市区三级联动

不言
Libérer: 2018-05-18 16:21:18
original
3100 Les gens l'ont consulté

跳至 [1] [2] [3] [4] [全屏预览]  

1

2

3

4

5

6

7

8

9

10

11

12

13

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

   }

Copier après la connexion

2. [代码][HTML]代码 跳至 [1] [2] [3] [4] [全屏预览]

1

2

3

4

5

6

7

8

9

10

<select name="province" id="province" onchange="loadRegion(&#39;province&#39;,2,&#39;city&#39;,&#39;{:U(&#39;Index/getRegion&#39;)}&#39;);">

       <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(&#39;city&#39;,3,&#39;town&#39;,&#39;{:U(&#39;Index/getRegion&#39;)}&#39;);">

      <option value="0">市/县</option>

    </select>

<select name="town" id="town">

      <option value="0">镇/区</option>

    </select>

Copier après la connexion

3. [代码][JavaScript]代码 跳至 [1] [2] [3] [4] [全屏预览]

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

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=&#39;0&#39;>请选择</option>").appendTo(jQuery("#"+selName));

}

}

);

}

</script>

Copier après la connexion

4. [代码][SQL]代码 跳至 [1] [2] [3] [4] [全屏预览]

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 &#39;0&#39;,

 `name` varchar(120) DEFAULT NULL,

 `type` tinyint(1) DEFAULT &#39;2&#39;,

 PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=3410 DEFAULT CHARSET=utf8;

Copier après la connexion

5. [文件] TP_tree.sql ~ 215KB 下载(7) [全屏预览]

Étiquettes associées:
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal