php代码怎么修改成laravel,Laravel框架实现即点即改功能的方法分析

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

有的时候我们不需要更改大量数据,只需要更改一个字段的时候,我们就用到了即点即改,以用户模块,修改用户名称为例,下图为我的展示模块

abc32201f92020d377179eaf1b9170da.png

8dd5e234183945cf15ade89b3afcc7ed.png

当我们点击用户名时,会出现一个修改框,那么这个修改框是怎么来的呢?

我们点击时,隐藏在这个td当中的修改框会出现,而展示时的用户名会隐藏起来,我们怎么利用代码实现?

{{$v->username}}

οnblur="edituser({{$v->id}})">

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

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

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

1)首先引入jquery文件

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

function saveuser(id){

document.getElementById('aaa'+id).style.display='block';//显示input

document.getElementById('bbb'+id).innerHTML="";//span标签的值设置为空

}

3)输入我们需要修改的数据,如下图:

9a48d11a0f2f2cdeb10f026b42ceac37.png

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)此时我们可以看到,页面已经修改

a49c50a81c308066a2e4eaf6216d13ba.png

而数据表中的数据也进行了更新

89238e954c23f6872d5e4d05377a1398.png

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/487414.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

人工智能、网络空间对国家核安全的影响

来源:知远战略与防务研究所人工智能技术是一把双刃剑,其在网络空间和核领域的应用,一方面能够为网络安全和核安全提供技术保障;另一方面,人工智能技术也可能为对手所用,通过网络空间对核武器体系进行渗透进…

CF876 F 思维 枚举

给你n个数,问有几个区间满足,区间内或操作大于区间内的任意数。 首先可以知道,两数或操作的结果必定不会小于两者间的最大值,也就是说对于一个区间中,不合法的状态只有两值或相等。那么我们可以考虑枚举每个数&#xf…

java 设置头错误信息,错误:在node.js中发送标头后无法设置标头

我在node.js中写了这个简单的登录代码:var express require ("express");var badyparser require ("body-parser");var app express();app.use(express.static(__dirname "/static"));app.use(badyparser());var users {tom : &…

关注 | 5G 和 WiFi-6,谁是智能制造的主角?

来源:万物智能视界依据不同的情境和需求,结合不同技术的优点,让5G和WiFi-6在工业、物联网、自驾车等领域皆能蓬勃发展,协助产业更进一步朝向智慧化迈进。去年(2019年)12月,英国的航太设备&#…

[LeetCode] Minimum Depth of Binary Tree

Given a binary tree, find its minimum depth. The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node. 二叉树的最小深度。 使用递归求解: 如果根节点为空,返回0。 如果左节点为空&…

java中table属性,Table边框使用方法及属性大全

一、表格的常用属性基本属性有:width(宽度)、height(高度)、border(边框值)、cellspacing(表格的内宽,即表格与tr之间的间隔)、 cellpadding(表格内元素的间隔,即tr与tr之间的间隔)、bordercolorlight(表格的亮边框颜色)、 bordercolordark(表…

吴恩达推荐笔记:22张图总结深度学习全部知识

来源|Sophia知乎,https://zhuanlan.zhihu.com/p/152362317本文仅用于学术分享,如有侵权,联系后台作删文处理编译:极市平台最近在做笔记查阅内容,觉得这个总结太美观了,真是棒!吴恩达…

matlab编程实现二进制树搜索,数据结构: 二进制搜索树(用C语言实现)

有关二叉树的基本知识,请参阅我的博客之一: 二叉树的链式存储说明:二进制排序树是具有以下属性的空树或二进制树:1. 如果左子树不为空,则左子树上所有节点的值均小于其根节点的值;2. 如果右子树不为空,则右子树上所有节点的值都大于其根节点的…

植物的意识,是我们的错觉吗?

来源:原理说到生物,你脑海中第一反应会浮现出什么?大象、狮子、蚂蚁……很多时候,我们可能会不由自主地忽略另一群重要的“地球邻居”。虽然植物占地球生物量的80%以上,但长久以来,它们一直会被忽略和低估。…

php $handle,laravel $kernel-handle 报错的解决办法_PHP开发框架教程

yii和zend框架的区别是什么?_PHP开发框架教程Yii框架和zend框架的区别:zend的功能强大,但基本百分之八十的功能你用不到;学习速度功能,效率方面,YII会略胜。Q:我的项目启动时报错laravel $kerne…

CodeForces 869E The Untended Antiquity 二维树状数组,随机hash

CodeForces 869E 题意: n*m 的格子,有三种操作, 1、在一个矩形周围加一层障碍。2、把一个矩形周围的障碍去掉。 3、询问两个格子是否可达。 题目保证不会有矩形障碍交叉,且去掉的矩形一定是在前面已给出的。 tags&#xff1a…

纪念机器翻译概念的诞生:重新认识瓦伦·韦弗先生

来源:AI科技评论作者:张家俊编辑:丛 末机器翻译旨在利用计算机实现自然语言之间的自动翻译,一直是自然语言处理与人工智能领域的重要研究方向,近年来更是取得了突破性进展,已成为大众较为熟知和常用的技术…

php 怎样清除浏览器痕迹,如何清除电脑使用痕迹?上网痕迹清理的方法介绍

当我们上网的时候,会使用电子信箱,会登录很多论坛类网站,这样就会留下账号;可能会访问一些网站,这样会留下上网信息;可能会登录一些电子商务网站,那账号和密码则会默认保存在系统之中&#xff0…

兰德报告《现代战争中的全域联合指挥控制--一种确定和开发人工智能应用的分析框架》...

本文来源:兵推天下本报告作者研究了美国空军应用人工智能(或更广泛的自动化系统)进行有计划全域联合指挥控制规划的机会并给出了相关建议。作者发现,要为未来多域战提供支持,必须协调以下三个范畴的内容:1)…

实现内、外网同时访问

不少公司的网管试图解决双网卡问题,下面我就给大家详细的讲解一下双网卡同时使用的方法,这样即可保障内网的安全,又能解决电脑访问外网的问题,一举两得。希望大家喜欢。 首先你的机器需要有两块网卡,分别接到两台交换机…

java swing 多个线程,Swing与多线程

1)如果要在图形界面上显示经过数据查询或经过其他方式得来的数据,一般将这个过程放在一个线程中,由该线程进行单独运算,并随时更新图形界面。(2)Swing线程发生死锁的时候,如果是使用命令行的方式运行的该程序,可以使用…

日本面向未来的特定科技领域技术预见分析

作者:王达,中国科协创新战略研究院本文转载自微信公众号科学家,原载于《今日科苑》2020年第5期目前,全球面临的环境、人口变化、资源、粮食和能源安全等问题亟待解决,先进的测量技术与信息处理技术的深度融合可以刺激更…

Prototype模式

原型模式创建对象不调用原对象的构造函数,是直接copy原对象的浅克隆:对值类型的成员变量进行值的复制,对引用类型的成员变量只复制引用,不复制引用的对象.深克隆:对值类型的成员变量进行值的复制,对引用类型的成员变量也进行引用对象的复制. …

oauth2.0 php简化模式,OAuth2.0学习(1-5)授权方式2-简化模式(implicit grant type)

授权方式2-简化模式(implicit grant type)简化模式(implicit grant type)不通过第三方应用程序的服务器,直接在浏览器中向认证服务器申请令牌,跳过了"授权码"这个步骤,因此得名。所有步骤在浏览器中完成,令牌对访问者是…

人与人工的智能区别

来源:人机与认知实验室是非之心,智也! 为什么说这不仅仅是指伦理道德,其实,这涉及到人之智能、智慧的根本:非逻辑推理性的判断! 机器的判断是逻辑推理性的,对环境的适应性自然就弱了一些。作家菲茨杰拉德的…