基于ThinkPHP实现批量删除


Posted in PHP onDecember 18, 2015

本文实例分析了基于ThinkPHP实现批量删除的代码实例,分享给大家供大家参考,具体如下:

废话不多说,先上效果图:

基于ThinkPHP实现批量删除

HTML布局(基于bootstrap)

<div class="panel panel-default">
  <div class="panel-heading">
    留言列表
    <a class="btn btn-xs btn-default pull-right" href="javascript:window.history.back();">返回</a>
    <a class="btn btn-xs btn-info pull-right mr-5" id="discard" href="javascript:;">删除</a>
  </div>
  <table class="table">
    <thead>
      <tr>
        <th><input class="all" type="checkbox"/></th>
        <th>id</th>
        <th>名称</th>
        <th>邮箱</th>
        <th>内容</th>
        <th>日期时间</th>
        <th>操作</th>
      </tr>
    </thead>
    <tbody>
       <form>
         <volist name="list" id="vo" empty="$empty">
           <tr>
             <td><input name="delete[]" type="checkbox" value="{$vo.id}" /></td>
             <td>{$vo.id}</td>
             <td>{$vo.name}</td>
             <td>{$vo.email}</td>
             <td>{$vo.subject}</td>
             <td>{$vo.datetime|date="Y-m-d H:i", ###}</td>
           <td>
            <a class="delete" href="javascript:;" data-id="{$vo.id}">删除</a>
           </td>
           </tr>
         </volist>
       </form>
    </tbody>
  </table>
</div>

JS脚本处理(使用ajax技术)
首先判断有没有选中的值,如果没有则提示;如果有,则传递到服务器端处理

/* 批量删除 */
  // 全选
  $('.all').click(function() {
    if($(this).is(':checked')) {
      $(':checkbox').attr('checked', 'checked');
    } else {
      $(':checkbox').removeAttr('checked');
    }
  });

  // 删除操作
  $('#discard').click(function() {
    if($(':checked').size() > 0) {
      layer.confirm('确定要删除吗?', {
        btn: ['确定','取消'], //按钮
        shade: false //不显示遮罩
      }, function(){
        $.post("{:U('Single/discard')}", {data: $('form').serializeArray()}, function(res) {
          if(res.state == 1) {
            layer.msg(res.message, {icon: 1, time: 1000});
          } else {
            layer.msg(res.message, {icon: 2, time: 1000});
          }
          setTimeout(function() {
            location.reload();
          }, 1000);
        });
      }, function(){
        layer.msg('取消了删除!', {time: 1000});
      });
    } else {
      layer.alert('没有选择!');
    }
  });

PHP代码:
获取提交的数据,然后循环得到每一个id的值,接着进行删除操作。

public function discard() {
  $contact = M('contact');
  $deleteArr = I('post.data');
  for($i=0;$i<count($deleteArr);$i++) {
    $contact->delete($deleteArr[$i]['value']);
  }
  $this->ajaxReturn(array('message'=>'删除成功!'));
}

以上就是ThinkPHP实现批量删除的关键性代码,希望对大家的学习有所帮助。

PHP 相关文章推荐
十天学会php之第八天
Oct 09 PHP
php 静态化实现代码
Mar 20 PHP
Session的工作机制详解和安全性问题(PHP实例讲解)
Apr 10 PHP
php+mysql查询优化简单实例
Jan 13 PHP
php+mysql结合Ajax实现点赞功能完整实例
Jan 30 PHP
浅谈php的优缺点
Jul 14 PHP
php实现微信扫码自动登陆与注册功能
Sep 22 PHP
Yii2 队列 shmilyzxt/yii2-queue 简单概述
Aug 02 PHP
laravel框架数据库配置及操作数据库示例
Oct 10 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
Nov 25 PHP
PHP实现随机发放扑克牌
Apr 21 PHP
php 防护xss,PHP的防御XSS注入的终极解决方案
Apr 01 PHP
thinkphp实现163、QQ邮箱收发邮件的方法
Dec 18 #PHP
WordPress中注册菜单与调用菜单的方法详解
Dec 18 #PHP
讲解WordPress开发中一些常用的debug技巧
Dec 18 #PHP
详解WordPress中给链接添加查询字符串的方法
Dec 18 #PHP
WordPress中用于更新伪静态规则的PHP代码实例讲解
Dec 18 #PHP
详解WordPress中用于合成数组的wp_parse_args()函数
Dec 18 #PHP
WordPress中用于获取文章信息以及分类链接的函数用法
Dec 18 #PHP
You might like
PHP数据流应用的一个简单实例
2012/09/14 PHP
WordPress用户登录框密码的隐藏与部分显示技巧
2015/12/31 PHP
laravel自定义分页的实现案例offset()和limit()
2019/10/15 PHP
Gambit vs ForZe BO3 第二场 2.13
2021/03/10 DOTA
javascript 限制输入和粘贴(IE,firefox测试通过)
2008/11/14 Javascript
基于jquery的鼠标拖动效果代码
2012/05/30 Javascript
关于Jquery操作Cookie取值错误的解决方法
2013/08/26 Javascript
JavaScript插件化开发教程 (三)
2015/01/27 Javascript
3种js实现string的substring方法
2015/11/09 Javascript
微信小程序之MaterialDesign--input组件详解
2017/02/15 Javascript
js获取浏览器和屏幕的各种宽度高度
2017/02/22 Javascript
vue.js整合vux中的上拉加载下拉刷新实例教程
2018/01/09 Javascript
vuejs项目打包之后的首屏加载优化及打包之后出现的问题
2018/04/01 Javascript
vue3.0 上手体验
2020/09/21 Javascript
[02:15]2014DOTA2国际邀请赛 专访LGD.lin小兔子是大腿
2014/07/14 DOTA
Python中用format函数格式化字符串的用法
2015/04/08 Python
用于统计项目中代码总行数的Python脚本分享
2015/04/21 Python
Python3 queue队列模块详细介绍
2018/01/05 Python
python使用tensorflow保存、加载和使用模型的方法
2018/01/31 Python
Python编程argparse入门浅析
2018/02/07 Python
对Python中画图时候的线类型详解
2019/07/07 Python
如何在Django项目中引入静态文件
2019/07/26 Python
pytorch 加载(.pth)格式的模型实例
2019/08/20 Python
python解释器pycharm安装及环境变量配置教程图文详解
2020/02/26 Python
python新式类和经典类的区别实例分析
2020/03/23 Python
从0到1使用python开发一个半自动答题小程序的实现
2020/05/12 Python
numpy矩阵数值太多不能全部显示的解决
2020/05/14 Python
Python如何读写CSV文件
2020/08/13 Python
python模拟点击玩游戏的实例讲解
2020/11/26 Python
俄罗斯电子产品在线商店:UltraTrade
2020/01/30 全球购物
标准导师推荐信(医学类)
2013/10/28 职场文书
学校节能减排方案
2014/06/13 职场文书
开学典礼校长致辞
2015/07/29 职场文书
实验室安全管理制度
2015/08/05 职场文书
创业方案:赚钱的烧烤店该怎样做?
2019/07/05 职场文书
Win11 PC上的Outlook搜索错误怎么办?
2022/07/15 数码科技