php ajax 表格编辑,php ajax表格实时编辑 PHP Ajax实现表格实时编辑

想了解PHP Ajax实现表格实时编辑的相关内容吗,佛祖的腿毛在本文为您仔细讲解php ajax表格实时编辑的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:php,ajax表格实时编辑,ajax实现表格编辑,下面大家一起来学习吧。

如果我们的对于一个表格中所有的数据都能在本页进行操作那该是多酷炫的一件事(用起来炒鸡爽)!

用Ajax就可以实现这个功能啦。废话不多说,下面贴出我写的demo吧哈哈。我用的TP框架(3.2)比较习惯啦。

首先是HTML代码部分:

AJAX实时编辑
TAB1TAB2TAB3TAB4添加
{$vv.tab1}{$vv.tab2}{$vv.tab3}{$vv.tab4}删除修改

var g_table = $("#g_table");

function add(){

var addRow = $("

");

g_table.append(addRow);

for(var i = 0;i < 4;i++){

var col_td = $("

");

addRow.append(col_td);

}

var col_opt = $("

");

var confirmBtn = $("确认");

var cancelBtn = $("取消");

cancelBtn.click(function(){

window.location.reload();

});

confirmBtn.click(function(){

var currentRow = $(this).parent().parent();

var input_files = currentRow.find("input");

var post_files = {};

for(var i = 0 , j = input_files.length;i < j;i++){

post_files['clo_' + i] = input_files[i].value;

}

// $.post("{:U('ajax/add')}",post_files,function(msg){

// debugger;

// })

$.ajax({

type: 'post',

url : "{:U('ajax/add')}",

data: {post_files},

success:function(msg){

alert(msg);

window.location.reload();

}

})

});

col_opt.append(confirmBtn);

col_opt.append(cancelBtn);

addRow.append(col_opt);

}

function del(obj){

var id = $(obj).parent().prev().prev().prev().prev().prev().val();

$.ajax({

type: 'post',

url: "{:U('ajax/del')}",

data: {id:id},

success:function(msg){

alert(msg);

}

})

$(obj).parent().parent().remove();

}

function edit(obj){

var id = $(obj).parent().prev().prev().prev().prev().prev().val();

for(var i = 1;i < 5;i++){

var temp = "

";

$(obj).parent().parent().children().eq(i).replaceWith(temp);

}

var confirmBtn1 = $("确认");

var cancelBtn1 = $("取消");

confirmBtn1.click(function(){

var currentRow = $(this).parent().parent();

var input_files = currentRow.find("input");

var post_files = {};

for(var i = 0 , j = input_files.length;i < j;i++){

post_files['clo_' + i] = input_files[i].value;

}

$.ajax({

type: 'post',

url : "{:U('ajax/edit')}",

data: {post_files:post_files,id:id},

success:function(msg){

alert(msg);

window.location.reload();

}

})

});

$(obj).prev().replaceWith(confirmBtn1);

$(obj).replaceWith(cancelBtn1);

}

function back(){

location.reload();

}

下面是控制器中的代码:

namespace Home\Controller;

use Think\Controller;

class AjaxController extends Controller{

public function index(){

$tab = M('table');

$tablist = $tab->select();

$this->assign('tablist',$tablist);

$this->display();

}

public function del(){

$map['id'] = $_POST['id'];

$tab = M('table');

$info = $tab->where($map)->delete();

if($info){

$this->ajaxReturn("删除成功");

}else{

$this->ajaxReturn("删除失败");

}

}

public function add(){

$map['tab1'] = $_POST['post_files']['clo_0'];

$map['tab2'] = $_POST['post_files']['clo_1'];

$map['tab3'] = $_POST['post_files']['clo_2'];

$map['tab4'] = $_POST['post_files']['clo_3'];

$tab = M('table');

$res = $tab->add($map);

if($res){

$this->ajaxReturn("添加成功");

}else{

$this->ajaxReturn("添加失败");

}

}

public function edit(){

$id = $_POST['id'];

$map['tab1'] = $_POST['post_files']['clo_1'];

$map['tab2'] = $_POST['post_files']['clo_2'];

$map['tab3'] = $_POST['post_files']['clo_3'];

$map['tab4'] = $_POST['post_files']['clo_4'];

// dump($map);exit;

$tab = M('table');

$res = $tab->where('id='.$id)->save($map);

if($res){

$this->ajaxReturn("更新成功");

}else{

$this->ajaxReturn("更新失败");

}

}

}

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!

相关文章

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

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

相关文章

jpa和hibernate_使用JPA和Hibernate有效删除数据

jpa和hibernate您可能会遇到必须对关系数据库中存储的大量数据集执行批量删除的情况。 如果您将JPA与Hibernate一起用作基础OR映射器&#xff0c;则可以尝试通过以下方式调用EntityManager的remove&#xff08;&#xff09;方法&#xff1a; public void removeById(long id) …

超越函数

代数数 在数论中&#xff0c;超越数是指任何一个不是代数数的数字&#xff08;通常它是复数&#xff09;。它满足以下条件——只要它不是任何一个整系数代数方程的根&#xff0c;它即是超越数。最著名的超越数是e以及π。 超越数 超越数的例子 所有超越数构成的集是一个不可数…

无服务器-仅仅是构建现代应用程序的一种方法?

如果搜索“无服务器”&#xff0c;则会发现无服务器是构建现代应用程序的一种新的流行方式。 无服务器真的是新的吗&#xff1f; 无服务器是指您无需担心服务器的概念-无需置备&#xff0c;部署和维护服务器。 显然有服务器&#xff0c;但是您无需考虑或担心它们&#xff0c;运…

linux查看用户的操作记录,Linux下查看用户登陆后的操作记录

Linux下查看用户登陆后的操作记录  在linux系统的环境下&#xff0c;不管是root用户还是其它的用户只有登陆系统后用进入操作我们都可以通过命令history来查看历史记录&#xff0c;可是假如一台 服务器多人登陆&#xff0c;一天因为某人误操作了删除了重要的数据。这时候通过…

只需5分钟即可启动并运行分层架构:: Spring Boot第1部分

这是一个分为两部分的系列&#xff0c;其中我将展示如何使用Spring Boot创建分层架构。 什么是分层体系结构&#xff1a;简而言之&#xff0c;当我们构建企业应用程序时&#xff0c;我们维护不同的层以封装特定于层的逻辑&#xff0c;这样就不会溢出到另一层。 当我们考虑企业…

机器学习算法、深度学习算法涉及的数学知识

微积分基础 导数的定义 左导数、右导数、可导函数 导数几何意义、物理意义 基本函数求导公式 四则运算法则 复合函数求导法则 神经网络激活函数的导函数求解 高阶导数 导数与函数单调性 极值定理 导数与函数凹凸性 一元函数泰勒展开 线性代数基础 向量与其运算 行向量和列向…

linux设置默认的首页文件,Linux 设置Firefox主页

Linux 设置Firefox主页在Linux系统中&#xff0c;当用户启动Firefox主页时&#xff0c;会自动打开Firefox默认设置的主页。当然&#xff0c;用户也可以通过Firefox的首选项&#xff0c;手动将Firefox主页设置为自己喜欢的或经常访问的网页。在本单元练习中&#xff0c;将Firefo…

spring 2.2 改进_Spring 4中@ControllerAdvice的改进

spring 2.2 改进在Spring 4的许多新功能中&#xff0c;我发现了ControllerAdvice的改进。 ControllerAdvice是Component的特殊化&#xff0c;用于定义适用于所有RequestMapping方法的 ExceptionHandler&#xff0c; InitBinder和ModelAttribute方法。 在Spring 4之前&#xff0…

向量范数与矩阵范数

一、向量的范数 1.1 定义 1.2 举例 首先定义一个向量为&#xff1a;a[-5&#xff0c;6&#xff0c;8, -10] 1.2.1 向量的1范数 向量的1范数即&#xff1a;向量的各个元素的绝对值之和&#xff0c;上述向量a的1范数结果就是&#xff1a;29&#xff0c;MATLAB代码实现为&…

不同磁盘目录共享linux,linux下实现磁盘共享(mount)

准备两台centos6.6 A(192.168.199.2)、B(192.168.199.3)&#xff0c;A做服务端、B做客户端。一台ubuntu14.04 C(192.168.199.4)C做客户端。A、B安装nfs对应服务yum -y install nfs-utils rpcbind####C安装nfs-kernel-serverapt-get install nfs-kernel-server####A设置nfs、por…

苹果linux桌面文件夹,Ubuntu 10.04下一键安装Mac OS X主题桌面

不久前的《Ubuntu 10.04下Mac OS X风格桌面美化安装》遭到网友的砖头&#xff0c;认为和Mac OS X风格桌面美化安装根本没有关系。本来是要跟这篇一起发布的&#xff0c;一等就等了这么长&#xff0c;下面我们来看下在Ubuntu 10.04下一键安装Mac OS X主题桌面的工具Epidermis th…

示性函数、共轭函数、对偶范数、共轭

示性函数(Indicator function) 共轭函数 对偶范数 几个常用公式 共轭&#xff08;conjugate&#xff09; 所谓“轭”&#xff0c;指的是古代牛车上放在并行的牛脖颈上的曲木。共轭关系&#xff0c;通俗来说一般用以描述两件事物以一定规律相互配对或孪生&#xff08;一般共轭对…

Redis-实践知识

转自极客时间Redis 亚风 原文视频&#xff1a;https://u.geekbang.org/lesson/535?article681062 Redis最佳实践 普通KEY Redis 的key虽然可以自定义&#xff0c;但是最好遵循下面几个实践的约定&#xff1a; 格式&#xff1a;[业务名称]:[数据名]:[id] 长度不超过44字节 不…

MicroProfile OpenAPI上的Swagger UI

MicroProfile OpenApi为我们提供了一种使用OpenApi 3描述我们JAX-RS API的标准化方法。如果您以前使用过swagger-jaxrs和swagger-annotations &#xff0c;由于OpenApi是基于Swagger构建的&#xff0c;因此您会感到非常熟悉。 2015年11月5日&#xff0c;SmartBear与3Scale&…

linux 跟踪内存,用strace跟踪malloc内存分配

strace介绍strace是一个非常有用的命令&#xff0c;它用于记录和跟踪程序运行期间收到的信号和调用的系统调用。strace的简单使用ubuntu64:~$ strace cat /dev/nullexecve("/bin/cat", ["cat", "/dev/null"], [/* 32 vars */]) 0brk(NULL) 0x1…

归一化、标准化和正则化

归一化 Normalization 归一化一般是将数据映射到指定的范围&#xff0c;用于去除不同维度数据的量纲以及量纲单位。 常见的映射范围有 [0, 1] 和 [-1, 1] &#xff0c;最常见的归一化方法就是 Min-Max 归一化&#xff1a; 举个例子&#xff0c;我们判断一个人的身体状况是否健…

slf4j绑定器_用于ADFLogger的SLF4J绑定–缺少的部分

slf4j绑定器由于最好的原因&#xff0c;在我的日常工作中&#xff0c;我希望为ADF Logger Oracle ADF提供一个SLF4J适配器。 毫不奇怪&#xff0c;slf4j没有用于ADFLogger的适配器&#xff0c;但是由于ADFLogger只是Java Util Logging的轻巧包装&#xff0c;因此花了一个多小时…

核心网

在我们正式讲解之前&#xff0c;我想通过这张网络简图帮助大家认识一下全网的网络架构&#xff0c;通过对全网架构的了解&#xff0c;将方便您对后面每一块网络细节的理解。 这张图分为左右两部分&#xff0c;右边为无线侧网络架构&#xff0c;左边为固定侧网络架构。 无线侧…

linux服务器防端口扫描,linux下防止syn***,端口扫描和死亡之ping

http://downloads.sourceforge.net ... les-v0.0.3-3.tar.gz下载以后安装&#xff1a;tar zxvf arptables-v0.0.3-3.tar.gzcd arptables-v0.0.3-3/makemake install生成的命令是/usr/local/sbin/arptables、/usr/local/sbin/arptables-save、/usr/local /sbin/arptables-restor…