thinkphp5 三级联动
2017-07-27 18:04
495 查看
这次用thinkphp5做这个三级联动,遇到了个大坑啊,一直解决不了,后来还是被我的’yin威‘所折服!!!!
直接放代码吧
这是html的:
省份的数据首先要先遍历出来:
然后是城市,区县:
这就是三级联动的全部了,说说我遇到的坑。
最开始做出来,城市和区县一直显示不了数据,这个坑让我弄了两天,心烦的要命。
今天查了日志,说是权限问题,然后开权限去了,再然后。。。就是你们现在看到的代码了
如果各位也有遇到我这种情况,也可能是权限问题!
直接放代码吧
这是html的:
<div class="row cl"> <label class="form-label col-xs-4 col-sm-3">地区:</label> <div class="formControls col-xs-8 col-sm-9"> <!-- 省/自治区 --> <select name="pro" id="pro"> <option>--请选择省份--</option> {volist name="pro" id="vo"} <option value="{$vo.region_id}">{$vo.region_name}</option> {/volist} </select> <!-- 市/州 --> <select name="city" id="city"> <option>--请选择省份--</option> <option value=""></option> </select> <!-- 区/县 --> <select name="county" id="county" > <option>--请选择省份--</option> <option value=""></option> </select> </div> </div>这是ajax的:
<script type="text/javascript"> $('#pro').change(function(){ $prov=$('#pro').val(); $.ajax({ type:"post", url:"{:url('hospital/getCity')}", data:'pro='+$prov, dataType:"json", success:function(data){ var html ='<option value="">--请选择市/州--</option>'; for(var i in data){ html += '<option value="'+data[i].region_id+'">'+data[i].region_name+'</option>'; } $('#city').html(html); } }); }); $('#city').change(function(){ $city=$('#city').val(); $.ajax({ type:"post", url:"{:url('hospital/getCounty')}", data:'city='+$city, dataType:"json", success:function(data){ var html ='<option value="">--请选择区/县--</option>'; for(var i in data){ html += '<option value="'+data[i].region_id+'">'+data[i].region_name+'</option>'; } $('#county').html(html); } }); }); </script>这是方法:
省份的数据首先要先遍历出来:
public function h_add(){ $area['area_deep']=1; $pro=Db::name('region')->where($area)->select(); $this->assign('pro',$pro); return $this->fetch(); }
然后是城市,区县:
public function getCity(){ if(request()->isPost()){ $pid=input('pro'); $a['parent_id']=$pid; $city=Db::name('region')->where($a)->select(); return json($city); } } public function getCounty(){ if(request()->isPost()){ $pid=input('city'); $a['parent_id']=$pid; $county=Db::name('region')->where($a)->select(); return json($county); } }
这就是三级联动的全部了,说说我遇到的坑。
最开始做出来,城市和区县一直显示不了数据,这个坑让我弄了两天,心烦的要命。
今天查了日志,说是权限问题,然后开权限去了,再然后。。。就是你们现在看到的代码了
如果各位也有遇到我这种情况,也可能是权限问题!
相关文章推荐
- 做个简单的thinkphp三级联动
- Thinkphp实现省市区三级联动
- 基于ThinkPHP+AJAX的省市区三级联动
- ThinkPHP利用Ajax实现省市县地区三级联动
- thinkphp 省市区三级联动
- 在thinkphp中使用省市县三级菜单联动
- Thinkphp dwz 三级联动下拉菜单
- ThinkPHP三级联动回显
- Thinkphp dwz 三级联动下拉菜单
- ThinkPhP。 异步实现地区三级联动
- 基于thinkphp和ajax的省市区三级联动
- Thinkphp实现省市区三级联动
- 基于ThinkPHP+AJAX的省市区三级联动
- thinkPHP实现的省市区三级联动功能示例
- ThinkPHP快速简单实现Ajax地区三级联动(很详细)
- thinkphp下的三级联动(带有缓存的)
- 继上一篇的thinkphp三级联动数据库
- thinkphp 三级联动
- ThinkPHP+AJAX三级联动
- ajax实现三级联动的基本方法