基于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 相关文章推荐
在Zeus Web Server中安装PHP语言支持
Oct 09 PHP
PHP函数常用用法小结
Feb 08 PHP
腾讯QQ php程序员面试题目整理
Jun 08 PHP
基于wordpress主题制作的具体实现步骤
May 10 PHP
php调用C代码的实现方法
Mar 11 PHP
PHP return语句的另一个作用
Jul 30 PHP
基于PHP制作验证码
Oct 12 PHP
laravel框架select2多选插件初始化默认选中项操作示例
Feb 18 PHP
php中数组最简单的使用方法
Dec 27 PHP
php中array_fill函数的实例用法
Mar 02 PHP
PHP中->和=>的意思
Mar 31 PHP
浅谈如何提高PHP代码质量之单元测试
May 28 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 归并排序 数组交集
2011/05/10 PHP
PHP解码unicode编码的中文字符代码分享
2014/08/13 PHP
让你的PHP7更快之Hugepage用法分析
2016/05/31 PHP
php单元测试phpunit入门实例教程
2017/11/17 PHP
js活用事件触发对象动作
2008/08/10 Javascript
js实现连续英文字符自动换行兼容ie6 ie7和firefox
2013/09/06 Javascript
分享一个常用的javascript静态类
2014/12/31 Javascript
JQuery中绑定事件(bind())和移除事件(unbind())
2015/02/27 Javascript
举例详解AngularJS中ngShow和ngHide的使用方法
2015/06/19 Javascript
javascript中substring()、substr()、slice()的区别
2015/08/30 Javascript
JS实现仿微博可关闭弹出层效果
2015/09/21 Javascript
JS实现同一个网页布局滑动门和TAB选项卡实例
2015/09/23 Javascript
JavaScript实现弹出模态窗体并接受传值的方法
2016/02/12 Javascript
jQuery动态生成不规则表格(前后端)
2017/02/21 Javascript
微信小程序 UI与容器组件总结
2017/02/21 Javascript
nodejs multer实现文件上传与下载
2017/05/10 NodeJs
解决bootstrap中使用modal加载kindeditor时弹出层文本框不能输入的问题
2017/06/05 Javascript
JS获取子、父、兄节点方法小结
2017/08/14 Javascript
解决vue init webpack 下载依赖卡住不动的问题
2020/11/09 Javascript
JavaScript实现滑块验证解锁
2021/01/07 Javascript
[52:20]VP vs VG Supermajor小组赛 B组胜者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
Python matplotlib生成图片背景透明的示例代码
2019/08/30 Python
windows下Python安装、使用教程和Notepad++的使用教程
2019/10/06 Python
基于python实现ROC曲线绘制广场解析
2020/06/28 Python
如何让PyQt5中QWebEngineView与JavaScript交互
2020/10/21 Python
解决pytorch 保存模型遇到的问题
2021/03/03 Python
HTML5拖拽的简单实例
2016/05/30 HTML / CSS
BRASTY捷克:购买香水、化妆品、手袋和手表
2017/07/12 全球购物
英国家居用品和家居装饰品购物网站:Cox & Cox
2019/08/25 全球购物
我的中国梦口号
2014/06/16 职场文书
政协调研汇报材料
2014/08/15 职场文书
2014年前台文员工作总结
2014/12/08 职场文书
安全员岗位职责范本
2015/04/11 职场文书
《七律·长征》教学反思
2016/02/16 职场文书
基于PyTorch实现一个简单的CNN图像分类器
2021/05/29 Python
分析Python list操作为什么会错误
2021/11/17 Python