laravel后台处理ajax的数组内容

这段时间在写公司的应用,遇到这个问题,特此记录保留。

应用功能:批量删除数据

ajax像后台传输数组

html结构

<a href="#" onclick="delete_this('',true)" data-action="trash">
    批量删除
</a>

@if($data != null)
    @foreach($data as $item)

    <div class="image-checkbox">
    
        //选择框,并给value对应该数据的id,用于批量选择的
        <input type="checkbox" class="cbr" value="{{$item->id}}" />
        
        //数据名称
        <div class="image-checkbox">
             {{$item->name}}                        
        </div>
    </div>
    
   @endforeach
@endif 

javascript

//获取页面中的选择框
var box = $('.cbr');

//创建一个空的数组
var arr = new Array();

for(var i=0; i < box.length; i++){

    //for循环出选择框对应的id数组
    if(box[i].checked)
    {
        arr.push(box[i].value);
    }
}
$.ajax({
    type : 'POST',
    url : '/delete',
    data : {
    
        //将数组命名id,方便后台读取
        id : arr
    },
    success : function(data){
        console.log(data.msg);
    }
});

后台

public function delete_list_many()
{
    //$_POST方法是php原生方法,用户获取传入的post值,我们前台用的是ajax post的方法传入的,如果是表单,可直接用laravel的Input::all()接收post和get的数据,这里的'id'就是ajax里data的id。
    
    $data = $_POST['id'];
    
    foreach ($data as $item)
    {
    
        //foreach执行即可
        
        $id = $item;
        Live::where('id',$id)->delete();
    }
    return ['msg'=>'删除成功'];
}

对我自己来说的难点:

  • jq如何将选项框的id值存到一个数组里
  • 后台如果读取ajax传入的数组,并执行

由于自己基础不牢固,对于以上两点百度了很久才弄明白。

反思

后台删除数据是使用foreach执行的,所有每个id的数据都会执行一边delete,数据很多的话,效率很一般。
所以我觉得是有更有效率的方法解决这个问题的,例如直接执行sql语句,把要删除的id卸载语句里什么的,由于这个应用基本批量删除的功能不常用,所以以后遇到了再去深究吧。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,083评论 19 139
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,391评论 11 349
  • Linux系统中的init进程(pid=1)是除了idle进程(pid=0,也就是init_task)之外另一个比...
    梦息_93f1阅读 870评论 0 0
  • 每天早上的起床都让我无比头疼,明明去到公司没事做,却还是得到公司报到一下,基本都是浑浑噩噩地飘来公司 今天在地铁上...
    hyyzzz阅读 250评论 0 0
  • 岁月如梭 白驹过隙 时间回放十年 青涩懵懂的少年 轻狂无知的笑脸 日子简简单单 岁月酸酸甜甜 兄弟对对错错 感情真...
    美食美客阅读 320评论 0 0