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

AJAX 的 PHP 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("更新失败");

}

}

}

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

您可能感兴趣的文章:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值