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 相关文章推荐
php分页函数
Jul 08 PHP
新浪新闻小偷
Oct 09 PHP
php预定义常量
Dec 25 PHP
php中用数组的方法设置cookies
Apr 21 PHP
PHP中usort在值相同时改变原始位置问题的解决方法
Nov 27 PHP
php函数array_merge用法一例(合并同类数组)
Feb 03 PHP
PHP递归调用的小技巧讲解
Feb 19 PHP
php生成随机密码自定义函数代码(简单快速)
May 10 PHP
php购物车实现方法
Jan 03 PHP
php制作简单模版引擎
Apr 07 PHP
PHP设计模式之 策略模式Strategy详解【对象行为型】
May 01 PHP
如何解决php-fpm启动不了问题
Nov 17 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可逆加密函数(分享)
2013/06/06 PHP
给ECShop添加最新评论
2015/01/07 PHP
PHP将字符串首字母大小写转换的实例
2017/01/21 PHP
细品javascript 寻址,闭包,对象模型和相关问题
2009/04/27 Javascript
javascript对下拉列表框(select)的操作实例讲解
2013/11/29 Javascript
使用jQuery实现返回顶部
2015/01/26 Javascript
jQuery读取XML文件内容的方法
2015/03/09 Javascript
在linux中使用包管理器安装node.js
2015/03/13 Javascript
javascript字符串与数组转换汇总
2015/05/26 Javascript
AngularJS 应用身份认证的技巧总结
2016/11/07 Javascript
vue init webpack myproject构建项目 ip不能访问的解决方法
2018/03/20 Javascript
浅谈在不使用ssr的情况下解决Vue单页面SEO问题(2)
2018/11/08 Javascript
利用js-cookie实现前端设置缓存数据定时失效
2019/06/18 Javascript
Python重新引入被覆盖的自带function
2014/07/16 Python
对python mayavi三维绘图的实现详解
2019/01/08 Python
Python中查看变量的类型内存地址所占字节的大小
2019/06/26 Python
对tensorflow中cifar-10文档的Read操作详解
2020/02/10 Python
Python中有几个关键字
2020/06/04 Python
Python xlrd模块导入过程及常用操作
2020/06/10 Python
python实现批量命名照片
2020/06/18 Python
Python3 pyecharts生成Html文件柱状图及折线图代码实例
2020/09/29 Python
Python基于locals返回作用域字典
2020/10/17 Python
利用python绘制正态分布曲线
2021/01/04 Python
python中常用的数据结构介绍
2021/01/12 Python
html5拍照功能实现代码(htm5上传文件)
2013/12/11 HTML / CSS
美国宠物商店:Wag.com
2016/10/25 全球购物
ASOS英国官网:英国在线时装和化妆品零售商
2017/05/19 全球购物
英国奢侈品概念店:Base Blu
2019/05/16 全球购物
预备党员思想汇报
2014/01/08 职场文书
婚前财产公证书
2014/04/10 职场文书
应届大学生自荐书
2014/06/17 职场文书
承诺书模板
2014/08/30 职场文书
社区母亲节活动总结
2015/02/10 职场文书
2016年教师师德师风承诺书
2016/03/25 职场文书
应届生个人的求职(自荐信范文2篇)
2019/08/23 职场文书
游戏《铁拳》动画化!2022年年内播出
2022/03/21 日漫