这里运用到省份表中,下面是效果图

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

需要一个省份表,里面的字段要有个pid,name这些字段

下面是控制器代码,(Citie,是那个省份表的模型)

 1     //显示页面
2 public function create(){
3 $data=Citie::where('pid',0)->get();
4 return view('admin.shop.create',['data'=>$data]);
5 }
6 //省份三级联动
7 public function getChildren(Request $request)
8 {
9 $pid=$request->get('pid');
10 $citys=Citie::where('pid',$pid)->get();
11 return $citys;
12 }
13
14 public function getParents(Request $request){
15 //获取pid
16 $pid=$request->get('pid');
17 $citys=Citie::where('pid',$pid)->get();
18 return $citys;
19 }

添加路由

1 //省份表的三级联动
2 Route::get('shop_create',[\App\Http\Controllers\Admin\ShopController::class,'create']);
3 Route::get('children',[\App\Http\Controllers\Admin\ShopController::class,'getChildren'])->name('children');
4 Route::get('parents',[\App\Http\Controllers\Admin\ShopController::class,'getParents'])->name('parents');

接下来是前端代码,注意,使用模板的时候,注意jquire的位置,代码是自上而下运行,我的是在最下面,写的时候看着自己的模板,不然后面两个下拉列表接不到值)

 1     <div>
2 <select id="province_id">
3 <option value="" name="1">请选择省份</option>
4 @foreach ($data as $v)
5 <option value="{{ $v->id }}">{{ $v->name }}</option>
6 @endforeach
7 </select>
8 <select id="city_id">
9 <option value="">请选择城市</option>
10 </select>
11 <select id="area_id">
12 <option value="">请选择区县</option>
13 </select>
14 </div>
 1 <script type="text/javascript">
2 $(function(){
3 $('#province_id').change(function () {
4 $('#city_id').empty().append("<option value='0'>请选择</option>")
5 let pid=$(this).val();
6 console.log(pid);
7 $.ajax({
8 type:'get',
9 url:'children',
10 dataType: 'json',
11 data:{pid:pid},
12 success:function (res){
13 res.forEach(function (v){
14 console.log(v)
15 $('#city_id').append(`<option value="${v.id}">${v.name}</option>`)
16 })
17 }
18 })
19 })
20
21 $("#city_id").change(function () {
22 $("#area_id").empty().append("<option value='0'>请选择</option>")
23 let pid =$(this).val();
24 console.log(pid);
25 $.ajax({
26 type:'get',
27 url:'parents',
28 dataType:'json',
29 data:{pid:pid},
30 success:function (res) {
31 res.forEach(function (v) {
32 console.log(v)
33 $("#area_id").append(`<option value="${v.id}">${v.name}</option>`)
34
35 })
36 }
37 })
38 })
39 })
40 </script>

laravel框架三级联动,详细代码的更多相关文章

  1. 转: javascript实现全国城市三级联动菜单代码

    <html> <head> <title>js全国城市三级联动菜单代码_B5教程网</title> <meta http-equiv=" ...

  2. 省市县三级联动js代码

    省市县三级联动菜单,JS全国省市县(区)联动代码,一般可以用于用户注册或分类信息二手交易网站,需要的朋友直接复制代码就可以用了,不过有朋友反馈说缺少某些城市,具体缺少哪个尚不知,请想用的朋友自己补全吧 ...

  3. jQuery三级联动效果代码(省、市、区)

    很长时间都不用jquery了,有人问我jquery写三级联动的插件我就写好了发出来吧,正好需要的人都可以看看. 一.html代码 <!DOCTYPE html> <html> ...

  4. 原生javascript制作省市区三级联动详细教程

    多级联动下拉菜单是前端常见的效果,省市区三级联动又属于其中最典型的案例.多级联动一般都是与数据相关联的,根据数据来生成和修改联动的下拉菜单.完成一个多级联动效果,有助于增强对数据处理的能力. 本实例以 ...

  5. laravel框架中容器类简化代码-摘自某书

    <?php //容器类装实例或提供实例的回调函数 class Container { protected $bindings = []; //绑定接口和生成相应实例的回调函数 public fu ...

  6. Easyui表单,文本框,下拉菜单三级联动练习代码

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  7. 省份、城市、区县三级联动Html代码

    <!DOCTYPE html><html><head> <meta http-equiv="Content-Type" content=& ...

  8. 三级联动(在YII框架中)

    //三级联动 //数据库代码过多就不上传了 //视图 <div class="area">    <table class="table"&g ...

  9. vue+element实现省区市三级联动以及详细地址的输入

    Vue+elementui实现省区市三级联动+详细地址的输入 详细需求,需要手动更改用户所在的地址. 安装依赖项 npm install element-china-area-data -S 在组建中 ...

  10. laravel框架安装过程中遇到的问题

    1.安装laravel框架之前的必要环境 php环境:网上有集成好的服务器,例如wamp,phpstudy.当然你可以自己搭建属于自己的环境.其中php必须是7.1版本以上: compose:php的 ...

随机推荐

  1. 截取屏幕 转为GIF 图片

    近期winform 做的一个截取屏幕的软件给大家!谁要留言给我哦! sss

  2. Javaweb基础复习------Filter相关应用+登录验证案例的使用

    Filter(过滤器) 基本步骤: 1.定义类,实现Filter接口,并重写其所有方法 2.配置Filter拦截资源的路径,在类上定义2 WebFilter注解(WebFilter配置的路径,是拦截资 ...

  3. Mybatis数据库驱动

    Mybatis数据库驱动 最近在学习mybatis的源码,有一个databaseIdProvider根据不同数据库执行不同sql的功能,我正好有一个mysql还有一个瀚高数据库,就去试了一下,使用如下 ...

  4. 【2019CCPC秦皇岛:A】Angle Beats 分类讨论 (unordered_map 加 hash)

    题意:n个给定点,q个询问点,每次询问给出一个坐标A,问从n中选定两个点B,C,有多少种方案使得ABC是个直角三角形. 思路:直角三角形能想的就那几个,枚举边,枚举顶点,这个题都行,写的枚举顶点的,A ...

  5. 深入理解 Python 虚拟机:字典(dict)的实现原理及源码剖析

    深入理解 Python 虚拟机:字典(dict)的实现原理及源码剖析 在本篇文章当中主要给大家深入介绍一下在 cpython 当中字典的实现原理,在本篇文章当中主要介绍在早期 python3 当中的版 ...

  6. Spring面试题持续更新

    这些都是我在微信公众号上看到的一些很有质量的文章,于是乎,自己记录一遍供自己学习 Spring中使用了哪些设计模式 单例模式:Spring中的Bean 模式都是单例的. 工厂模式:工厂模式主要是通过B ...

  7. Synchronized和Volatile的对比

    Synchronized和Volatile是并发中的两大关键字,有相似性和不同点. Synchronized更详细介绍参考https://www.cnblogs.com/spark-cc/p/1706 ...

  8. ES5新增数组常见方法(indexof/forEach/map/filter)

    新增的数组常见方法:以下说明中,红色为必选参数,蓝色为可选参数 1.indexOf(data,start); 用于返回某个数组或者字符串中规定字符或者字符串的位置: var arr = [" ...

  9. [数据结构]二叉搜索树(BST) VS 平衡二叉排序树(AVL) VS B树(平衡多路搜索树) VS B+树 VS 红黑树(平衡二叉B树)

    1 二叉排序树/二叉查找树/Binary Sort Tree 1种对排序和查找都很有用的特殊二叉树 叉排序树的弊端的解决方案:平衡二叉树 二叉排序树必须满足的3条性质(或是具有如下特征的二叉树) 若它 ...

  10. mac上传文件到obs需要配置的环境

    本篇主要是使用mac对华为云 对象存储服务OBS 上传的一些说明. 配置环境 华为云obsutil下载地址 下载后得到.tar.gz格式的文件 解压 tar -xzvf xx.tar.gz 进入obs ...