Laravel框架基于ajax实现二级联动功能示例


Posted in PHP onJanuary 17, 2019

本文实例讲述了Laravel框架基于ajax实现二级联动功能。分享给大家供大家参考,具体如下:

1、html页面:

<div class="form-group">
   <label for="rule">过期规则:</label>
   <select name="rule" id="rule" class="form-control" style="width:20%; margin-right: 40px;">
    <option value="0" rule_id="0">请选择规则</option>
    @foreach($rules as $rule)
       <option value="{{ $rule->value }}" rule_id="{{ $rule->id }}">{{ $rule->name }}</option>
    @endforeach
   </select>
   <label for="time">过期倍数:</label>
   <select name="time" id="time" class="form-control" style="width:20%;">
     <option value="0">请选择倍数</option>
   </select>
   <span id="auto"></span>
</div>

过期规则是在页面加载时,便已经从数据表中取出来放进去了:

$projects = Project::all();
$rules = Rule::all();
return view('key.create', compact('projects', 'rules'));

2、ajax代码:

$("#rule").change(function() {
  $.post("{{ url('key/createTime') }}/"+$(this).find("option:selected").attr("rule_id"), {
    "_token": "{{ csrf_token() }}"
  }, function(data) {
    $("#time").html("<option value='0' name='time'>请选择倍数</option>");
    if(data.value == 0) { // 当选择请选择规则时,不会向下执行
      return false;
    }
    $.each(data, function(i, time) {
      $("#time").append("<option value='" + time.value + "'>" + time.value + "</option>");
    });
    $("#time").append("<option id='auto_time'>自定义</option>");
  });
});

当过期规则改变时,将id传到createTime()方法中

3、createTime()方法:

public function createTime($rule_id)
{  // 当选中的为请选择规则时,自己拼一个数据,当success时,判断
 if ($rule_id == 0) {
   return ['id'=>0, 'value'=>0, 'rule_id'=>0];
 }
 $times = Rule::find($rule_id)->time;
 return $times;
}

对$times的处理:rule和time表是一对多的关系:

public function time()
{
    return $this->hasMany(\App\Model\Time::class, 'rule_id', 'id');
}

4、效果:

Laravel框架基于ajax实现二级联动功能示例

Laravel框架基于ajax实现二级联动功能示例

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

PHP 相关文章推荐
动态新闻发布的实现及其技巧
Oct 09 PHP
PHP header函数分析详解
Aug 06 PHP
PHP imagecreatefrombmp 从BMP文件或URL新建一图像
Jul 16 PHP
通过5个php实例细致说明传值与传引用的区别
Aug 08 PHP
php针对cookie操作的队列操作类实例
Dec 10 PHP
php连接odbc数据源并保存与查询数据的方法
Dec 24 PHP
PHP在innodb引擎下快速代建全文搜索功能简明教程【基于xunsearch】
Oct 14 PHP
PHP对象实例化单例方法
Jan 19 PHP
php+resumablejs实现的分块上传 断点续传功能示例
Apr 18 PHP
thinkPHP5.1框架使用SemanticUI实现分页功能示例
Aug 03 PHP
Laravel (Lumen) 解决JWT-Auth刷新token的问题
Oct 24 PHP
php设计模式之正面模式实例分析【星际争霸游戏案例】
Mar 24 PHP
Laravel框架基于ajax和layer.js实现无刷新删除功能示例
Jan 17 #PHP
strpos() 函数判断字符串中是否包含某字符串的方法
Jan 16 #PHP
Laravel框架实现的批量删除功能示例
Jan 16 #PHP
Laravel框架实现的rbac权限管理操作示例
Jan 16 #PHP
PHP基于cookie实现统计在线人数功能示例
Jan 16 #PHP
php curl获取https页面内容,不直接输出返回结果的设置方法
Jan 15 #PHP
对php 判断http还是https,以及获得当前url的方法详解
Jan 15 #PHP
You might like
PHP分页显示制作详细讲解
2006/12/05 PHP
laravel Validator ajax返回错误信息的方法
2019/09/29 PHP
JavaScript入门教程(9) Document文档对象
2009/01/31 Javascript
javascript 图片上一张下一张链接效果代码
2010/03/12 Javascript
JQuery,Extjs,YUI,Prototype,Dojo 等JS框架的区别和应用场景简述
2010/04/15 Javascript
单击某一段文字改写文本颜色
2014/06/06 Javascript
使用jquery 简单实现下拉菜单
2015/01/14 Javascript
通过jquery-ui中的sortable来实现拖拽排序的简单实例
2016/05/24 Javascript
关于RequireJS的简单介绍即使用方法
2016/10/20 Javascript
js实现一个猜数字游戏
2017/03/31 Javascript
jQuery实现节点的追加、替换、删除、复制功能示例
2017/07/11 jQuery
jquery操作ul的一些操作笔记整理(干货)
2017/08/31 jQuery
基于 flexible 的 Vue 组件:Toast -- 显示框效果
2017/12/26 Javascript
Spring Boot/VUE中路由传递参数的实现代码
2018/03/02 Javascript
解决vue2.0 element-ui中el-upload的before-upload方法返回false时submit()不生效问题
2018/08/24 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【凹多边形的分离轴检测算法】
2018/12/13 Javascript
Vue 使用formData方式向后台发送数据的实现
2019/04/14 Javascript
深度了解vue.js中hooks的相关知识
2019/06/14 Javascript
简单的通用表达式求10乘阶示例
2014/03/03 Python
Python自动登录126邮箱的方法
2015/07/10 Python
Python提取Linux内核源代码的目录结构实现方法
2016/06/24 Python
Python实现的计算器功能示例
2018/04/26 Python
Python迭代器与生成器用法实例分析
2018/07/09 Python
django 多对多表的创建和插入代码实现
2019/09/09 Python
Django调用支付宝接口代码实例详解
2020/04/04 Python
python实现IOU计算案例
2020/04/12 Python
Python脚本破解压缩文件口令实例教程(zipfile)
2020/06/14 Python
如何在python中实现线性回归
2020/08/10 Python
几款主流好用的富文本编辑器(所见即所得常用编辑器)介绍
2021/03/17 Javascript
台湾最大银发乐活百货:乐龄网
2018/05/21 全球购物
NFL Game Pass欧洲:在线观看NFL比赛直播和点播,以高清质量播放
2018/08/30 全球购物
酒店行政人事部经理职务说明书
2014/02/26 职场文书
保密法制宣传月活动总结
2015/05/07 职场文书
运动会100米广播稿
2015/08/19 职场文书
golang slice元素去重操作
2021/04/30 Golang
前端使用svg图片改色实现示例
2022/07/23 HTML / CSS