laravel ajax的即点即改

1、定义路由

Route::get("shownews",'News4Controller@show');

2、模型层查询数据

/**
 * 获取多条数据
 * @param array $where
 * @return mixed
 */
public static  function  getAll($where=[]){
    return  self::where($where)->paginate();
}

 

3、控制器层展示数据

public  function   show(){
 $data =    News4::getAll();//调用模型层查询数据
 return view('news4/show',['data'=>$data]);//渲染视图层
}

4、视图层显示数据

@foreach($data  as  $v)
    <tr>
        <td>{{$v->id}}</td>
        <td dataid="{{$v->id}}">
        @if($v->state=="正常")
        <span class="btn-success btn">{{$v->state}}</span>  
        @else
        <span class="btn-danger btn">{{$v->state}}</span> 
         @endif
         </td>
        <td class="state" dataid="{{$v->id}}"> 
        @if($v->state=="正常")
         <img  src="../images/r.png" state="{{$v->state}}">   
         @else<img  src="../images/t.png" state="{{$v->state}}">  
         @endif</td>
        <td>删除 修改</td>
    </tr>
@endforeach
{{$data->links()}}

5、书写事件 发动数据 ajax

$(".btn").click(function () {
    //$(this)代表你点击的元素  parent父集 td    attr 获取自定义属性 dataid
    var id = $(this).parent('td').attr('dataid');
    var state = $(this).text();//text文本属性
    var _this=$(this);//因为ajax中this冲突
    $.get('change', {id: id, state: state}, function (data) {
        if(data.code==0){
            _this.text(data.data);
        if(data.data=='正常'){
                _this.removeClass("btn-danger");
                _this.addClass("btn-success");
            }else{
                _this.removeClass("btn-success");
                _this.addClass("btn-danger");
            }
        }else{
            alert(data.msg);
        }
    }, 'json')
})

6、修改的接口 控制层

public   function   change(Request $request){
    $id=$request['id'];
    $state= $request['state'];
    if($state=="正常"){
        $state="冻结";
    }else{
        $state="正常";
    }
   $res= News4::up(['id'=>$id],['state'=>$state]);
    if($res){
        return  ['code'=>0,'data'=>$state,'msg'=>'修改成功'];
    }else{
        return  ['code'=>1,'data'=>"",'msg'=>'修改失败'];
    }
}

7、修改的模型层

public   static  function  up($where,$data){
    return  self::where($where)->update($data);
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值