Laravel框架实现即点即改功能的方法分析


Posted in PHP onOctober 31, 2019

本文实例讲述了Laravel框架实现即点即改功能的方法。分享给大家供大家参考,具体如下:

有的时候我们不需要更改大量数据,只需要更改一个字段的时候,我们就用到了即点即改,以用户模块,修改用户名称为例,下图为我的展示模块
Laravel框架实现即点即改功能的方法分析
Laravel框架实现即点即改功能的方法分析
当我们点击用户名时,会出现一个修改框,那么这个修改框是怎么来的呢?
我们点击时,隐藏在这个td当中的修改框会出现,而展示时的用户名会隐藏起来,我们怎么利用代码实现?

<td onclick="saveuser({{$v->id}})">
    <span id="bbb{{$v->id}}">{{$v->username}}</span>
    <input type="text" value="{{$v->username}}" style="display:none" id="aaa{{$v->id}}"
     onblur="edituser({{$v->id}})">
  </td>

从上述代码中我们可以看到一个存放用户名的span标签,还有一个默认为隐藏的input框,用来存放用户名,接下来我们要做的就是:通过相应的点击事件,实现即点即改;在修改数据时,我们尽量要根据他的唯一字段id进行修改,避免出错:

首先,我在页面显示span标签当中起了一个id,名为 “bbb”+用户的id,在隐藏的input中id为 “aaa”+用户的id,在相应点击事件中存放id,方便ajax取用户的id值;

接下来就是通过ajax技术,传递相应id值,以及要修改的数据到控制器,进行相应的修改:

1)首先引入jquery文件

<script src="{{asset('Follow')}}/js/jquery.min.js"></script>

2)点击事件:当我们点击时,span标签内容设置为空值,input标签出现

function saveuser(id){
	    document.getElementById('aaa'+id).style.display='block';//显示input
	    document.getElementById('bbb'+id).innerHTML="";//span标签的值设置为空
  }

3)输入我们需要修改的数据,如下图:
Laravel框架实现即点即改功能的方法分析

4)要修改的数据写完之后,就到了最关键的时候,怎样进行修改?

通过上面,可以看到input有一个失去焦点事件,因此我在这个事件里进行ajax请求

function edituser(id){
   var username = document.getElementById('aaa'+id).value;//获取文本框的值
  $.ajax({
    type:'GET',//请求方式
    data:{'id':id,'username':username},//传递参数
    url:"{{url('edituser')}}",//地址
    success:function(e){//回调
      if(e==1){
        document.getElementById('aaa'+id).style.display = 'none';//如果修改成功,input隐藏
        document.getElementById('bbb'+id).innerHTML = username;//修改成功,将表里修改后的数据赋值给span标签
      }else{
        alert('修改失败');
        window.location.reload();
      }
    }
   
  })
 }

5)通过ajax传递的参数,进行数据查询和修改:
首先我们在控制器接收:

public function edituser(){

	  $arr = Input::get();//接收ajax传递的参数

	  $result = BlueShop::useredit($arr);//调用模型,并将接收到的 id 和要修改的数据赋给模型

	  if($result){
	    $status = 1;
    }else{
	    $status = 2;
    }
    return $status;//将结果返回给展示页面
  }

然后我们在模型进行我们的逻辑代码部分

//$arr数组 $arr['id'] 用户id $arr['username']要修改的用户名
public static function useredit($arr){

    $res = DB::table('jy_user')->where('id',$arr['id'])->update($arr);//通过id修改

    return $res;//返回结果
  }

6)此时我们可以看到,页面已经修改
Laravel框架实现即点即改功能的方法分析
而数据表中的数据也进行了更新
Laravel框架实现即点即改功能的方法分析

这就是一个简单的即点即改,希望对大家能有所帮助!!!

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

PHP 相关文章推荐
在同一窗体中使用PHP来处理多个提交任务
Oct 09 PHP
Linux下 php5 MySQL5 Apache2 phpMyAdmin ZendOptimizer安装与配置[图文]
Nov 18 PHP
检查url链接是否已经有参数的php代码 添加 ? 或 &amp;
Feb 09 PHP
基于php无限分类的深入理解
Jun 02 PHP
php读取文件内容的三种可行方法示例介绍
Feb 08 PHP
PHP自带函数给数字或字符串自动补齐位数
Jul 29 PHP
为PHP安装imagick时出现Cannot locate header file MagickWand.h错误的解决方法
Nov 03 PHP
smarty模板引擎之配置文件数据和保留数据
Mar 30 PHP
PHP实现图片不变型裁剪及图片按比例裁剪的方法
Jan 14 PHP
php for 循环使用的简单实例
Jun 02 PHP
Zend Framework教程之Zend_Helpers动作助手ViewRenderer用法详解
Jul 20 PHP
Laravel创建数据库表结构的例子
Oct 09 PHP
laravel 框架实现无限级分类的方法示例
Oct 31 #PHP
tp5框架的增删改查操作示例
Oct 31 #PHP
PHP简单实现图片格式转换(jpg转png,gif转png等)
Oct 30 #PHP
thinkPHP框架乐观锁和悲观锁实例分析
Oct 30 #PHP
PHP的HTTP客户端Guzzle简单使用方法分析
Oct 30 #PHP
ThinkPHP5.0框架实现切换数据库的方法分析
Oct 30 #PHP
Laravel 中使用简单的方法跟踪用户是否在线(推荐)
Oct 30 #PHP
You might like
php中的实现trim函数代码
2007/03/19 PHP
PHP使用ffmpeg给视频增加字幕显示的方法
2015/03/12 PHP
PHP+mysql+ajax轻量级聊天室实现方法详解
2016/10/17 PHP
JS创建优美的页面滑动块效果 - Glider.js
2007/09/27 Javascript
判断及设置浏览器全屏模式
2014/04/20 Javascript
使用jQuery设置disabled属性与移除disabled属性
2014/08/21 Javascript
Javascript实现网络监测的方法
2015/07/31 Javascript
jquery+CSS实现的多级竖向展开树形TRee菜单效果
2015/08/24 Javascript
JavaScript编写检测用户所使用的浏览器的代码示例
2016/05/05 Javascript
JS返回只包含数字类型的数组实例分析
2016/12/16 Javascript
JS中的Replace()传入函数时的用法详解
2017/09/11 Javascript
微信小程序实现YDUI的ScrollTab组件
2018/02/02 Javascript
浅谈webpack devtool里的7种SourceMap模式
2019/01/14 Javascript
基于纯JS实现多张图片的懒加载Lazy过程解析
2019/10/14 Javascript
python动态监控日志内容的示例
2014/02/16 Python
python使用urllib2实现发送带cookie的请求
2015/04/28 Python
在django中使用自定义标签实现分页功能
2017/07/04 Python
Python使用Matplotlib模块时坐标轴标题中文及各种特殊符号显示方法
2018/05/04 Python
Python基于最小二乘法实现曲线拟合示例
2018/06/14 Python
python 递归深度优先搜索与广度优先搜索算法模拟实现
2018/10/22 Python
Python计算库numpy进行方差/标准方差/样本标准方差/协方差的计算
2018/12/28 Python
django用户登录验证的完整示例代码
2019/07/21 Python
python3中rank函数的用法
2019/11/27 Python
使用Python 自动生成 Word 文档的教程
2020/02/13 Python
python中常见错误及解决方法
2020/06/21 Python
HTML5 History API 实现无刷新跳转
2016/01/11 HTML / CSS
酒店司机岗位职责
2013/12/14 职场文书
个人求职简历中英文自我评价
2013/12/16 职场文书
办理暂住证介绍信
2014/01/11 职场文书
应聘医药销售自荐书范文
2014/02/08 职场文书
事务机电主管工作职责
2014/02/25 职场文书
敬老模范事迹
2014/05/21 职场文书
销售顾问工作计划书
2014/09/15 职场文书
党纪处分决定书
2015/06/24 职场文书
oracle连接ODBC sqlserver数据源的详细步骤
2021/07/25 Oracle
Win10 Anaconda安装python-pcl
2022/04/29 Servers