基于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手册及PHP编程标准
Dec 17 PHP
一段php加密解密的代码
Jul 16 PHP
php fckeditor 调用的函数
Jun 21 PHP
php分页函数示例代码分享
Feb 24 PHP
php文件服务实现虚拟挂载其他目录示例
Apr 17 PHP
php使用GD库创建图片缩略图的方法
Jun 10 PHP
php类常量用法实例分析
Jul 09 PHP
PHP实现删除字符串中任何字符的函数
Aug 11 PHP
php实现购物车功能(上)
Jul 23 PHP
Zend Framework入门知识点小结
Mar 19 PHP
php实现往pdf中加数字签名操作示例【附源码下载】
Aug 07 PHP
PHP策略模式写法
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实现httpclient类示例
2014/04/08 PHP
PHP strip_tags保留多个HTML标签的方法
2016/05/22 PHP
Laravel 5.3 学习笔记之 配置
2016/08/28 PHP
来自国外的14个图片放大编辑的jQuery插件整理
2010/10/20 Javascript
cnblogs中在闪存中屏蔽某人的实现代码
2010/11/14 Javascript
jquery uaMatch源代码
2011/02/14 Javascript
JQuery设置和去除disabled属性的5种方法总结
2013/05/16 Javascript
JS清除IE浏览器缓存的方法
2013/07/26 Javascript
js实现的点击div区域外隐藏div区域
2014/06/30 Javascript
Javascript调用函数方法的几种方式介绍
2015/03/20 Javascript
jQuery定义背景动态切换效果的方法
2015/03/23 Javascript
jQuery.Uploadify插件实现带进度条的批量上传功能
2016/06/08 Javascript
vue2.0结合DataTable插件实现表格动态刷新的方法详解
2017/03/17 Javascript
JavaScript使用readAsDataURL读取图像文件
2017/05/10 Javascript
JavaScript定义函数_动力节点Java学院整理
2017/06/27 Javascript
原生js FileReader对象实现图片上传本地预览效果
2020/03/27 Javascript
vue mixins组件复用的几种方式(小结)
2017/09/06 Javascript
vue-router命名视图的使用讲解
2019/01/19 Javascript
vue两组件间值传递 $router.push实现方法
2019/05/15 Javascript
DatePickerDialog 自定义样式及使用全解
2019/07/09 Javascript
Windows下安装 node 的版本控制工具 nvm
2020/02/06 Javascript
详解Python的单元测试
2015/04/28 Python
python机器学习案例教程——K最近邻算法的实现
2017/12/28 Python
Python图像的增强处理操作示例【基于ImageEnhance类】
2019/01/03 Python
实例介绍Python中整型
2019/02/11 Python
Python数组拼接np.concatenate实现过程
2020/04/18 Python
Python在centos7.6上安装python3.9的详细教程(默认python版本为2.7.5)
2020/10/15 Python
python中strip(),lstrip(),rstrip()函数的使用讲解
2020/11/17 Python
整理HTML5的一些新特性与Canvas的常用属性
2016/01/29 HTML / CSS
Mistine官方海外旗舰店:泰国国民彩妆品牌
2016/12/28 全球购物
萨克斯第五大道英国:Saks Fifth Avenue英国
2019/04/01 全球购物
综合办公室主任职责
2013/12/16 职场文书
大四优秀党员个人民主评议
2014/09/19 职场文书
2015年企业工作总结范文
2015/04/28 职场文书
食品安全责任书范本
2015/05/09 职场文书
详解Vue的sync修饰符
2021/05/15 Vue.js