PHP 批量删除的实现

布局效果

布局代码

<button type="button" class="btn btn-sm btn-danger btn-erbi-danger" id="batchDel" style="margin-right:20px;">批量删除</button>
<tr>
    <th><input id="checkAll" type="checkbox"></th>
    <th>ID</th>
    <th>所属公司</th>
    <th>姓名</th>
    <th>性别</th>
    <th>身份证号</th>
    <th>手机号</th>
    <th>住址</th>
    <th>备注</th>
    <th>标签</th>
    <th>创建时间</th>
    <th>操作</th>
</tr>
<volist name="result" id="vo">
    <tr data-id="{$vo.id}" data-table="company">
        <td><input class="checkOne" type="checkbox" data-id="{$vo.id}"></td>
        <td>{$vo.id}</td>
        <td>{$vo.company_name}</td>
        <td>{$vo.name}</td>
        <td>{$vo.sex_str}</td>
        <td>{$vo.id_card}</td>
        <td>{$vo.telephone}</td>
        <td>{$vo.address}</td>
        <td>{$vo.remark}</td>
        <td>{$vo.tag_str}</td>
        <td>{$vo.create_time|date='Y-m-d H:i',###}</td>
        <td>
            <?php if (!$_SESSION['_admin_is_company']) { ?>
            <a href="javascript:;"  class="info_tag">标签</a>
            <?php }?>
            <a href="javascript:;" data-id="{$vo.id}" class="info_edit">编辑</a>
            <a href="javascript:;" data-id="{$vo.id}" class="info_del">删除</a>
        </td>
    </tr>
</volist>

一个checkAll,一个checkOne。一个ID,一个Class。

增加全选反选事件

// 全选,反选
$("#checkAll").on('change', function () {
    if ($(this).is(":checked")) { // 全选
        $(".checkOne").prop("checked",true);
    } else { // 反选
        $(".checkOne").prop("checked",false);
    }
});

增加删除事件,获取id

// 批量删除
$("#batchDel").on('click', function () {
    var ids = [];

    // 获取选中的id
    $('tbody input.checkOne').each(function (index, el) {
        if ($(this).prop('checked')) {
            ids.push($(this).data('id'))
        }
    });

    layer.confirm('确认要删除吗?' + ids.toString(), function (index) {
        //捉到所有被选中的,发异步进行删除
        ajaxBatchDel(ids.toString());
    });
});

// ajax批量删除
function ajaxBatchDel(ids) {
    // ajax设置不通过
    $.ajax({
        type: 'POST',
        url: 'ajaxBatchDel',
        data: {ids: ids},
        dataType: 'json',
        success: function (data) {
            if (data.errno == 0) {
                layer.msg('删除成功', {icon: 1});
                $(".checkOne:checked").parents('tr').remove();
            } else {
                layer.msg(data.errdesc, {icon: 5});
                return false;
            }
        }
    });
}

批量软删除

public function ajaxBatchDel() {
    $ids = $_POST['ids'];
    if (!$ids){
        $this->json->setErr(10001,'请选择要删除的内容');
        $this->json->Send();
    }

    $employee = M('employee');
    $flag = $employee->where(['id'=>['in',$ids]])->save(['status'=>0]);
    if($flag){
        $this->json->setErr(0, '删除成功');
        $this->json->Send();
    }else{
        $this->json->setErr(10099, '删除失败');
        $this->json->Send();
    }
}

原文地址:https://www.cnblogs.com/jiqing9006/p/11359143.html

时间: 2024-10-13 02:43:24

PHP 批量删除的实现的相关文章

mysq批量删除sleep进程

由于sleep进程比较多,就写个特简单的脚本,批量删除下,只保留5个即可 #!/bin/sh n=`/export/servers/mysql/bin/mysqladmin processlist -uroot -pxxxxx|grep -i sleep |wc -l` echo $n if [ "$n" -gt 10 ] then for i in `/export/servers/mysql/bin/mysqladmin processlist -uroot -pxxxxxx|gr

批量删除遇见的问题

做批量删除时遇见的问题: org.apache.ibatis.binding.BindingException: Parameter 'ids' not found. Available parameters are [array] 前台jsp页面的ajax请求可以进入: 但是点击批量删除的按钮时会报这个错误: 后来发现是Mapper中的collection定义错了: 把<foreach>标签中的collection="ids"改为collection="arra

利用yii2 gridview实现批量删除案例[转]

今天仍然继续探讨GridView的问题,昨天有个小伙伴留言说你用gridview给我去掉表头的链接?我想啊想,这用gridview确实不容易实现,至少我没想出来,会的下方可留言.但是呢,这根gridview有个毛线关联啊,明明是要设置ActiveDataProvider,你要我怎么用gridview实现嘛. 这个问题也是很简单的,我们来看看具体实现 $dataProvider = new ActiveDataProvider([ "query" => $query, ]); $d

【DRP】—【SQL】批量删除

1 /** 2 * 批量删除用户 3 * 4 * 采用一条语句完成删除 5 * 只提交一次 6 * 7 * 采用Statement拼串方式 8 * delete from t_user where user_id in ('aaaa', 'afff', 'eeee') 9 * @param userIds 10 */ 11 public void delUser(String[] userIds) { 12 StringBuilder sbStr = new StringBuilder(); 1

5月21 汽车查询及批量删除----php方法

---恢复内容开始--- 这个与之前不同是在php中实现了页面的查询,引用AJAX实现批量删除及弹窗的显示 作业要求: 页面显示数据代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.or

批处理 批量删除当前目录及子目录下多个指定的扩展名文件

批量删除当前目录及子目录下任意指定的扩展名文件 今编译DEV的语言文件,各种语言文件不需要,只保留中文的语言文件,写个批处理也方便以后使用 1 @echo off 2 set Path=%CD% 3 cd /d Path 4 del /f/s/q/a *.tlog 5 del /f/s/q/a *.cache 6 del /f/s/q/a *.txt 7 del /f/s/q/a *.pdb 8 del /f/s/q/a *.resources 9 del /f/s/q/a *.vspscc 1

如何禁止 Mac OS X 在外接设备上生成 .DS_Store 文件?以及如何批量删除 .DS_Store 文件?

如何禁止 Mac OS X 在外接设备上生成 .DS_Store 文件?以及如何批量删除 .DS_Store 文件?原文链接:http://www.java2class.net/bbs/viewthread.php?tid=254背景信息.DS_Store文件(Desktop Services Store)是一个隐藏的文件,在每一个目录下都有,它存放着这个文件目录的一些特定属性信息 Metadata,比如图标大小.位置.背景图片等属性:有点儿类似于 Windows 操作系统上的 Thumbs.d

批量删除本地指定扩展名文件工具

VC工具在编译时,会生成大量临时文件,占用很多空间,项目多了,手动删除就会很费力,所以我做了个小工具,可以批量删除指定目录,指定扩展名的文件. 此工具根据配置文件指定的扩展名删除文件,一般我删除VC的扩展名为:.ipch.pdb.pch.sdf.tlog.obj.idb.ilk.res.根据需要,自行配置. 下载地址:http://download.csdn.net/detail/yxstars/8201833 下面是一些vc扩展名的含义: .APS:存放二进制资源的中间文件,VC把当前资源文件

使用easyui实现列表的批量删除

使用easyui实现列表的批量删除 首先要做的就是添加一个多选框 <table id="otGrid" nowrap="false" style="height: 330px;"> <thead> <tr> <th data-options="checkbox:true"></th> //就是这个,多选框 在列表的配置选项中 添加一个 singleSelect:fal

删除JS前台校验,后台批量删除

1.功能需求 在一个数据表格中,选中欲删除的记录,点击删除按钮,先触发前台验证,然后调用后台处理逻辑 2.代码实现 HTML代码: <asp:Repeater ID="repInputList" runat="server" DataSourceID="InputsDataSource" EnableViewState="true" > <HeaderTemplate> <table cellpa